Aktualizovat "program.c

This commit is contained in:
Daniel Béreš 2019-11-10 14:58:03 +00:00
parent 69a69b518e
commit c94c624a34

View File

@ -2,47 +2,47 @@
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
int main() {
char* prve_cislo = malloc(100* sizeof(char));
char* druhe_cislo = malloc(100* sizeof(char));
fgets(prve_cislo,100,stdin);
strtok(prve_cislo,"\n");
if (isalpha(*prve_cislo)){
printf("%s je neplatny zapis.\n",prve_cislo);
free(prve_cislo);
free(druhe_cislo);
return 0;
}
int cislo1 = strtof(strtok(prve_cislo,"\n"),NULL);
printf("Nacitane %d\n",cislo1);
int cislo2;
while((fgets(druhe_cislo,100,stdin))){
cislo2= strtof(strtok(druhe_cislo,"\n"),NULL);
int buf_C_1 = cislo1;
int buf_C_2 = cislo2;
if (isalpha(*druhe_cislo)){
printf("%s je neplatny zapis.\n",druhe_cislo);
free(prve_cislo);
free(druhe_cislo);
return 0;
long long int nsd(long long int,long long int);
long long int nsd(long long int cislo1,long long int cislo2){
while (cislo1 != cislo2){
if (cislo1 > cislo2){
cislo1 -= cislo2;
} else{
cislo2 -= cislo1;
}
while (cislo1 != cislo2){
if (cislo1 > cislo2){
cislo1 -= cislo2;
} else{
cislo2 -= cislo1;
}
}
printf("Nacitane %d\n",cislo2);
printf("Najvacsi spolocny delitel cisel %ld a %ld je %ld\n",buf_C_1,buf_C_2,cislo1);
}
free(prve_cislo);
free(druhe_cislo);
return cislo1;
}
int main() {
freopen("vstup.txt","r",stdin);
char* prvy_vstup = malloc(100* sizeof(char));
char* druhy_vstup = malloc(100* sizeof(char));
fgets(prvy_vstup,100,stdin);
strtok(prvy_vstup,"\n");
if (!isdigit(*prvy_vstup)){
printf("%s je neplatny zapis.\n",prvy_vstup);
goto koniec;
} else{
printf("Nacitane %llu\n",strtoll(prvy_vstup,NULL,10));
}
while((fgets(druhy_vstup,100,stdin))){
strtok(druhy_vstup,"\n");
if (!isdigit(*druhy_vstup)){
printf("%s je neplatny zapis.\n",druhy_vstup);
goto koniec;
} else{
long long int vysledok = nsd(strtoll(prvy_vstup,NULL,10),strtoll(druhy_vstup,NULL,10));
printf("Nacitane %llu\n",strtoll(druhy_vstup,NULL,10));
printf("Najvacsi spolocny delitel cisel %llu a %llu je %llu\n",strtoll(prvy_vstup,NULL,10),strtoll(druhy_vstup,NULL,10),vysledok);
}
}
koniec:
free(prvy_vstup);
free(druhy_vstup);
}