Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Algorytm Euklidesa

Ostatnio zmodyfikowano 2009-03-28 10:27
Autor Wiadomość
mms1994
Temat założony przez niniejszego użytkownika
Algorytm Euklidesa
» 2009-03-26 16:35:36
Witam!!!

Potrzebuję pomocy w napisaniu w/w algorytmu, oto efekty mojej pracy, proszę o poprawę i informacje co dalej:


//Program obliczający najmniejszy wspólny dzielnik dwóch liczb, oparty na algorytmie Euklidesa



C/C++
#include <iostream>
#include <string>    //do napisów
#include <conio.h>   //do clrscr
#include <vector>    //do vector<string>
#include <fstream>   //do ifstream
#include <sstream>   //do stringstream
#include <time.h>    //daty i czasu
#include <windows.h> //do Sleep

using namespace std;

int main()
{
    int a, b, c; //c to jest najmniejszy wspolny dzielnik
    cout << "Podaj a" << endl;
    cin >> a;
    cout << "Podaj b" << endl;
    cin >> b;
    if( a == b ); //jeżeli a=b
   
    {
    }
    if( a == b )
    {
        cout << "Najwiekszy wspolny dzielnik to " << a << endl; //wypisz a
    }
    else //jeżeli a nie = b
    {
        if( a > b ); //warunek a>b
       
    }
    if( a > b ); //prawda a>b
   
    {
        a = a - b;
    }
    else
    {
        b = b - a;
    }
    getch();
    return( 0 );
}
P-5047
DejaVu
» 2009-03-26 16:43:57
Początek tematu: http://forum.ddt.pl/?Tid=704

/edit:
Czytałeś jak działaAlgorytm Euklidesa?

/edit2:
Zgodnie z pseudokodem na Wikipedii:
C/C++
long NWD( long a, long b )
{
    while( b != 0 )
    {
        long c = a % b;
        a = b;
        b = c;
    } //while
   
    return a;
}
P-5048
mms1994
Temat założony przez niniejszego użytkownika
» 2009-03-27 20:24:58
1. Tamto to było tylko przykład, a teraz na infe to jest.
2. Czytałem i nie końca rozumiem.
3. Da się tak prosto zapiać???
P-5060
DeBugger
» 2009-03-27 20:35:54
C/C++
/*
Stworzone przez JCJa
*/
#include <iostream>
#include <conio.h>
int main()
{
    using namespace std;
    int a, b;
    cout << "Podaj a i b." << endl;
    cin >> a;
    cin >> b;
    while( a != b )
    {
        if( a > b ) a = a - b;
        else b = b - a;
       
    }
    cout << "Najwiekszy wspolny dzielnik wynosi: " << a << "." << endl;
    getch();
}
Pozwolę sobie udostępnić kod, który właśnie na infę pisałem ostatnimi czasy. :)
//Edit:
C/C++
#include <string>    //do napisów
#include <vector>    //do vector<string>
#include <fstream>   //do ifstream
#include <sstream>   //do stringstream
#include <time.h>    //daty i czasu
#include <windows.h> //do Sleep
Nie rozumiem po co Ci te liby??
P-5062
mms1994
Temat założony przez niniejszego użytkownika
» 2009-03-28 10:27:06
Bardzo dziękuję za pomoc.

Każdą "prace" zaczynam z tymi librami bo tak jakoś... przyzwyczaiłem się
P-5080
« 1 »
  Strona 1 z 1