Avatar
Matej Bandik
Člen
Avatar
Matej Bandik:

Zdravím :) mám problém s vložením kódu do funkcie :) prosím vás poradil by mi niekto akým spôsobom to mám vyriešiť keď výpis nechcem mať vo funkcií ale v maine :) ďakujem

#include <stdio.h>
#include <ctype.h>
#include <string.h>

int main(void)
{
        char str[101];
        char b[101];
        char *p;
        long j;
        int c =2;

                while (scanf("%100s", str) != EOF)
        {
                j = strtol(str,&p,10);
                if (*p == '\0')
                {


                                for (c=2;c<=(j-1);c++)
                                {

                                        if (j%c == 0){
                                                printf("Number: %ld\n",j);
                                                break;
                                        }
                                }
                                if (c==j)
                                        printf("Number: %d (prime)\n",j);
                }

                if (*p){
                strcpy(b,str);
                strrev(b);

                   if (strcmp(str,b) == 0)
                          printf("Word: %s (palindorm)\n",str);
                   else
                          printf("Word: %s\n",str);
                }

        }
    return 0;
}
Editováno 28.10.2015 14:14
 
Odpovědět 28.10.2015 14:13
Avatar
Jozef
Člen
Avatar
Jozef:

Sprav niečo podobné aj so zbytkom kódu:

#include <stdio.h>
#include <ctype.h>

char *funkcia(char *str)
{
     char *p;
     long j;
     j = strtol(str,&p,10);
                if (*p == '\0')
                {
                        return "Number:";
                }

                if (*p){
                       return "Word:";
                }
}

int main(void)
{
        char str[101];
        char *p;
        long j;

        while (scanf("%100s", str) != EOF)
            printf("%s %s",funkcia(str),str);
    return 0;
}
Editováno 28.10.2015 15:46
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 28.10.2015 15:45
I'm not afraid to die on a treadmill
Avatar
Odpovídá na Jozef
Libor Šimo (libcosenior):

Ja by som z toho spravil projekt.
funkcie.h; funkcie.c; main.c ;-)

Editováno 28.10.2015 18:05
Nahoru Odpovědět 28.10.2015 18:04
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jozef
Člen
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jozef:

Určite, ale myslím, že takto je to jednoduchšie na pochopenie a použitie, takže preňho je lepšie nechať to takto.

Nahoru Odpovědět 28.10.2015 18:13
I'm not afraid to die on a treadmill
Avatar
David Novák
Tým ITnetwork
Avatar
Odpovídá na Libor Šimo (libcosenior)
David Novák:

Dělit to má smysl jen když máš těch fcí víc - tak > 200 řádků.. Jinak to podle mě přehlednost naopak snižuje ;)

Nahoru Odpovědět 28.10.2015 19:53
Chyba je mezi klávesnicí a židlí.
Avatar
Odpovídá na David Novák
Libor Šimo (libcosenior):

David, nejde o profesionalitu, ale o to, ze casom skoro kazdy prejde na objekty...;-)

Nahoru Odpovědět 28.10.2015 19:55
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
David Novák
Tým ITnetwork
Avatar
Odpovídá na Libor Šimo (libcosenior)
David Novák:

Myslíš, že rozdělování fcí do modulů jim pak lépe pomůže pochopit OOP? Myslím, že je to přinejmenším diskutabilní.. A můžeš tím zbytečně zmást nováčka, který třeba nezná oddělený překlad a teorii za tím ;)

Nahoru Odpovědět  +1 28.10.2015 20:03
Chyba je mezi klávesnicí a židlí.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.