Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] Zamena samoglasnika brojevima ...

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Zamena samoglasnika brojevima ...

[ Pregleda: 2300 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Fidelito_Castro
Fidelito_Castro
Subotica

Član broj: 143557
Poruke: 87
*.eunet.yu.



Profil

icon [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 01:37 - pre 199 meseci
Ljudi pozdrava svima,imam problema oko resavanja jednog zadatka???

Code:

/*Napraviti program koji:
a)U main funkciji sadrzi niz karaktera od 10 elemenata.
b)Prihvata unos jedne reci koju smesta u niz
c)Koriscenjem switch case strukture izvrsiti zamenu samoglasnika brojevima (a postaje 1,e postaje 2,i postaje 3,o postaje 4,u postaje 4)
d)Ispisuje na monitoru poruku Uneta rec < uneta rec > se menja u rec <promenjena rec>
f)Program treba da ima: fukcionalnost zavrsetka rada po izboru (‘d’ za nastavak)*/

#include<stdio.h>
#include<string.h>
#define MAKS 10

int main(void)
{
    char niz[MAKS];//u ovaj niz se smestaju karakteri
    char br2[MAKS];
    char slovo;
    int br;//promenljiva koja ce se koristiti kroz petlje

    do
    {//telo do=while petlje

        fflush(stdin);
        /*Unosenje karaktera sa terminala */

        do
        {//telo do-while petlje
            printf("Unesite neke karaktere<maks %d>",MAKS);
            gets(niz);
            
        }while(0> strlen(niz) || strlen(niz) >10);//kraj do-while petlje

        strcat(br2,niz);//kopiranje karaktera iz niz-a u niz br2
        
        /*Ispitivanje unesenih karaktera*/

        switch(br2[MAKS])
            {//telo skretnice switch
        
                case'a':{
                    for(br=0;br<10;br++)
                        br2[br]=1;
                 }
                case'e':{
                    for(br=0;br<10;br++)
                            br2[br]=2;
                            
                 }
                case'i':{
                    for(br=0;br<10;br++)
                            br2[br]=3;
                 
                case'o':{
                    for(br=0;br<10;br++)
                        br2[br]=4;
                 }
                case'u':{
                    for(br=0;br<10;br++)
                            br2[br]=4;}
             }//kraj skretnice switch
        
        for(br=0;br<10;br++)
        {//pocetak for petlje
        printf("Uneta rec %s se menja u %s promenjena rec",niz[br],br2[br]);
        }//kraj for petlje
        
        printf("Zelite li da nastavite<d>");
        
        slovo=getchar();
        fflush(stdin);
        }


    }while(slovo=='d');//kraj do-while petlje
}




Sve je ok,ali program ne radi ono sto bi trebao??????????
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 07:24 - pre 199 meseci
Code:

fflush(stdin);

Proveri da li su ti potrebni *baš* svi fflush()-ovi u kodu. Imaš ih na nekoliko mesta, a na primer nemaš fflush() u petlji za unos reči, gde je po meni najpotrebniji. Ipak proveri da li su uopšte neophodni.

Code:

}while(0> strlen(niz) || strlen(niz) >10);//kraj do-while petlje

}while( strlen(niz)<1 || strlen(niz)>10);//kraj do-while petlje

Code:

strcat(br2,niz);//kopiranje karaktera iz niz-a u niz br2

strcat() je spajanje a ne kopiranje, probaj:
strcpy(br2,niz);//kopiranje karaktera iz niz-a u niz br2

Code:

switch(br2[MAKS])

odavnde pa na dole je sve pogrešno... /da ne komentarisem/

Probaj ovako /netestirano/
Code:

/*Napraviti program koji:
a)U main funkciji sadrzi niz karaktera od 10 elemenata.
b)Prihvata unos jedne reci koju smesta u niz
c)Koriscenjem switch case strukture izvrsiti zamenu samoglasnika brojevima (a postaje 1,e postaje 2,i postaje 3,o postaje 4,u postaje 4)
d)Ispisuje na monitoru poruku Uneta rec < uneta rec > se menja u rec <promenjena rec>
f)Program treba da ima: fukcionalnost zavrsetka rada po izboru (‘d’ za nastavak)*/

#include<stdio.h>
#include<string.h>
#define MAKS 10

int main(void)
{
    char niz[MAKS];//u ovaj niz se smestaju karakteri
    char br2[MAKS];
    char slovo;
    int br;//promenljiva koja ce se koristiti kroz petlje

    do
    {//telo do=while petlje

        fflush(stdin);
        /*Unosenje karaktera sa terminala */

        do
        {//telo do-while petlje
            printf("Unesite neke karaktere<maks %d>",MAKS);
            gets(niz);
            
        }while( strlen(niz)<1 || strlen(niz)>10);//kraj do-while petlje

        strcpy(br2,niz);//kopiranje karaktera iz niz-a u niz br2
        
        /*Ispitivanje unesenih karaktera*/

        for( br=0; br<strlen(br2); br++ )
        {
            switch ( br2[br] )
            {
                 case 'a': br2[br]='1'; break;
                 case 'e': br2[br]='2'; break;
                 case 'i': br2[br]='3'; break;
                 case 'o': br2[br]='4'; break;
                 case 'u': br2[br]='5'; break;
            }
        }
                            
        printf("Uneta rec %s se menja u %s promenjena rec\n", niz, br2 );
        
        printf("Zelite li da nastavite<d>");
        
        slovo=getchar();
        fflush(stdin);


    }while(slovo=='d');//kraj do-while petlje

}
 
Odgovor na temu

mjux

Član broj: 124150
Poruke: 158
*.ADSL.neobee.net.



+2 Profil

icon Re: [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 07:39 - pre 199 meseci
Code:

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

#define MAX 10

void main(void)
{
    char niz[MAX]="", izbor=NULL;
    int i=0;

    do
    {
        izbor=NULL, niz[0]='\0';

        clrscr();
        fflush(stdin);

        printf("unesi string:\t");

        gets(niz);

        i=0;
        while(niz[i]!='\0')
        {
            switch(niz[i])
            {
                case 'a': niz[i]='1';
                   break;
                case 'e': niz[i]='2';
                   break;
                case 'i': niz[i]='3';
                   break;
                case 'o': niz[i]='4';
                   break;
                case 'u': niz[i]='5';
            }
            i++;
        }

        printf("\nnovi string:\t%s",niz);

        izbor=getchar();

    }while(izbor=='d');
}



Izvol'te


 
Odgovor na temu

Fidelito_Castro
Fidelito_Castro
Subotica

Član broj: 143557
Poruke: 87
*.eunet.yu.



Profil

icon Re: [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 08:07 - pre 199 meseci
Thanks ljudi puno ste mi pomogli,samo imam neki nejasnoca u vezi funkcije clrscr(); sta ona radi ???
 
Odgovor na temu

mjux

Član broj: 124150
Poruke: 158
*.ADSL.neobee.net.



+2 Profil

icon Re: [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 08:27 - pre 199 meseci
brise ekran(clrscr== clear screen :))
 
Odgovor na temu

Fidelito_Castro
Fidelito_Castro
Subotica

Član broj: 143557
Poruke: 87
*.eunet.yu.



Profil

icon Re: [Zadatak] Zamena samoglasnika brojevima ...06.12.2007. u 08:28 - pre 199 meseci
Cool!Hvala :)
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Zamena samoglasnika brojevima ...

[ Pregleda: 2300 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.