programma ipologismou elaxistou koinou pollaplasiou

Συζητήσεις για την γλώσσα C και C++

Συντονιστές: Super-Moderators, WebDev Moderators

Απάντηση
TMK
Δημοσιεύσεις: 9
Εγγραφή: 19 Αύγ 2007 23:59

programma ipologismou elaxistou koinou pollaplasiou

Δημοσίευση από TMK » 29 Νοέμ 2007 01:26

#include <stdio.h>
#include <stdlib.h>
/* programma ipologismou elaxistou koinou pollaplasiou*/
main()
{
int a,b,max,min,k=0;
printf("dose dio akereous arithmous:\n");
scanf("%d %d",&a,&b);
if (a<=0 || b<=0)
{
printf("ksanadose dio akeraious arithmous:\n");
scanf("%d %d",&a,&b);
}
if (a==b)
{
min=a;
max=a;
}
else if (a>b)
{
min=b;
max=a;
}
else
{
min=a;
max=b;
}
while ((max%min)!=0)
{
k=k+1;
max=max*2;
if ((max%min)==0)
{
printf("\n\nEKP=%d\n---",max);
}
}
if (k==0)
{
printf("\n\nEKP=%d\n---",max);
}
printf("\n\n\n");
system("pause");
}




μηπως μπορείτε να βοηθήσετε? τι λάθος έχω και για ορισμένες τιμές του α,β μου βγάζει οτι το ελάχιστο κοινό πολλαπλάσιο είναι 0? είμαι πρωτοετής στην πληροφορική και είμαι λίγο ψιλοάσχετος.. χρησιμοποιώ το περιβάλλον "Bloodshed Dev-C++" σε windows vista. ευχαριστώ!

Programmer
Δημοσιεύσεις: 67
Εγγραφή: 22 Σεπ 2007 06:55

programma ipologismou elaxistou koinou pollaplasiou

Δημοσίευση από Programmer » 29 Νοέμ 2007 23:53

Ο κώδικας είναι κώδικας αρχαρίου (με πολλούς πλεονασμούς) και το λάθος σου είναι ότι διπλασιάζεις το max.
Πάρε ένα πιο κομψό κώδικα (από τροποποίηση του δικού σου). Δεν θυμάμαι τον αλγόριθμο του ΕΚΠ (και ούτε κάθησα να τον σκεφτώ) αλλά δεν μου φάινεται αυτός που έχω αναπτυξει (στα πολύ γρήγορα) λάθος.

#include <stdio.h>
#include <stdlib.h>
/* programma ipologismou elaxistou koinou pollaplasiou*/

#define MIN_(a, b) ((a)<(b))?(a):(b)
#define MAX_(a, b) ((a)>(b))?(a):(b)

main()
{
int a,b,max,min,ekp,c;

do
{
printf("dose dio akereous arithmous:\n");
scanf("%d %d",&a,&b);
}while(!(a>0 && b>0));

min = MIN_(a, b);
max = MAX_(a, b);

c = 1;

do{
ekp=max*c;
c++;
} while ((ekp%min)!=0)

printf("\n\nEKP=%d\n---",ekp);

printf("\n\n");
system("pause");
}

TMK
Δημοσιεύσεις: 9
Εγγραφή: 19 Αύγ 2007 23:59

programma ipologismou elaxistou koinou pollaplasiou

Δημοσίευση από TMK » 04 Δεκ 2007 02:04

ευχαριστώ για την βοήθεια!

Απάντηση

Επιστροφή στο “C, C++”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης