Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 9 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.02.09
Prihlásený: 10.02.09
Príspevky: 3
Témy: 1
Príspevok NapísalOffline : 03.02.2009 22:15

Chcel som pre jednu slečnu spraviť programik ktory by po napisani jej mena vyhodil obrazok (srdiečko konkretne :-P ) ale vyskytlo sa par problemov a neviem kde je vada :-P zatial som sa dopracoval k tomuto :

Kód:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char m[10], a[10]="tatiana";
printf("Napis svoje meno: ");
scanf("%s", &m);

if (m=="a")
printf("\n""____________000000____________000000______________ ", m);

else
printf("\n""____________000000____________000000______________ ", m);
printf("\n""__________000000000000______000000000000__________ ", m);
printf("\n""______000000000000000000__000000000000000000______ ", m);
printf("\n""____00000000000000000000000000000000000000000_____ ", m);
printf("\n""___00000000000000___000000000___00000000000000____ ", m);
printf("\n""__000000000000000___000000000___000000000000000___ ", m);
printf("\n""_0000000000000000___000000000___0000000000000000__ ", m);
printf("\n""_0000000000000000___000000000___0000000000000000__ ", m);
printf("\n""_0000000000000000___000000000___0000000000000000__ ", m);
printf("\n""_0000000000___000000000000000000000___0000000000__ ", m);
printf("\n""__000000000___000000000000000000000___000000000___ ", m);
printf("\n""___000000000___0000000000000000000___000000000____ ", m);
printf("\n""_____000000000___000000000000000___000000000______ ", m);
printf("\n""_______00000000____00000000000____00000000________ ", m);
printf("\n""__________0000000_______________0000000___________ ", m);
printf("\n""_____________0000000000000000000000000____________ ", m);
printf("\n""_______________000000000000000000000______________ ", m);
printf("\n""__________________000000000000000_________________ ", m);
printf("\n""___________________000000000000___________________ ", m);
printf("\n""______________________000000______________________ ", m);
printf("\n""_______________________0000_______________________", m);
   
    printf("\n\n\n");
system("PAUSE > nul");
return 0;
}



Viem ze tam je to if a else naopak ale ked zadam ten obrazok ku if tak mi pri else už vyhadzuje chybu .. .asi tam treba oznacit ze pod if patri cely ten obrazov so vsetkymi printf ale neviem jak na to. A pri if (m=="a") ma to ignoruje ze aj ked zadam to co je deklarovane ako "a" tak to proste skoci na else ... uvazovali sme ze by to mohlo mat nieco docienia so stisnutim enteru ale neviem :-P ... s Cčkom som začal tak pred tyždňom čiže som v tom lamka tak mi plz niekto pomožte :-P Dik moc :)


Offline

Užívateľ
Užívateľ
if a else v C

Registrovaný: 02.09.05
Prihlásený: 17.11.10
Príspevky: 154
Témy: 1
Príspevok NapísalOffline : 03.02.2009 22:41

Kód:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
   char m[255];
   printf("Napis svoje meno: ");
   scanf("%s", m);

   if (strcmp(m, "tatiana"))
   {
      printf("Nothing for you...\n");
      system("pause");
      return 0;
   }

   printf("\n\n____________000000____________000000______________\n");
   printf("__________000000000000______000000000000__________\n");
   printf("______000000000000000000__000000000000000000______\n");
   printf("____00000000000000000000000000000000000000000_____\n");
   printf("___00000000000000___000000000___00000000000000____\n");
   printf("__000000000000000___000000000___000000000000000___\n");
   printf("_0000000000000000___000000000___0000000000000000__\n");
   printf("_0000000000000000___000000000___0000000000000000__\n");
   printf("_0000000000000000___000000000___0000000000000000__\n");
   printf("_0000000000___000000000000000000000___0000000000__\n");
   printf("__000000000___000000000000000000000___000000000___\n");
   printf("___000000000___0000000000000000000___000000000____\n");
   printf("_____000000000___000000000000000___000000000______\n");
   printf("_______00000000____00000000000____00000000________\n");
   printf("__________0000000_______________0000000___________\n");
   printf("_____________0000000000000000000000000____________\n");
   printf("_______________000000000000000000000______________\n");
   printf("__________________000000000000000_________________\n");
   printf("___________________000000000000___________________\n");
   printf("______________________000000______________________\n");
   printf("_______________________0000_______________________\n");
   printf("________________________00________________________\n\n\n");

   system("pause");
   return 0;
}

Je potrebne zadat slovo "tatiana", aby sa dostavil pozadovany efekt...







_________________
Múdry nie je ten, čo veľa vie, ale ten, kto vie, čo je treba. (Thomas Alva Edison)
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.02.09
Prihlásený: 10.02.09
Príspevky: 3
Témy: 1
Príspevok Napísal autor témyOffline : 03.02.2009 23:13

Dik moc za pomoc :)
Vidno že v tom mam ešte veľmi malo vedomosti nakoľko si tam pridal nejaky prikaz čo nemam šajn čo robi a nejaku dalšiu knižnicu :-D ešte raz diky ;)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3
Príspevok NapísalOffline : 04.02.2009 17:17

Ide o to, ze nemozes porovnavat dve polia (resp. retazce) naraz, ale znak po znaku - a to prave robi funkcia strcmp(). V pripade ze sa tieto retazce nerovnaju (teda vrati 1), program skonci. Je deklarovana v hlavickovom subore string.h, preto tam je to #include <string.h>







_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 03.02.09
Prihlásený: 10.02.09
Príspevky: 3
Témy: 1
Príspevok Napísal autor témyOffline : 04.02.2009 21:22

Aha ďakujem za vysvetlenie :-P Take niečo spominala aj učiteľka Cčka ale zaprve som jej chapal len z častia aza druhe som nevedel ako porovnavať znak po znaku :)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.06.08
Prihlásený: 04.07.11
Príspevky: 114
Témy: 12
Príspevok NapísalOffline : 07.02.2009 14:36

dobre ako mozno sa myslim ale pri tom scanf si nezabudol znak & ??? viem ze malickost len ma to zarazilo ze to tam nie je

Kód:
scanf("%s",&m);


Offline

Užívateľ
Užívateľ
if a else v C

Registrovaný: 16.05.07
Prihlásený: 01.08.17
Príspevky: 837
Témy: 6
Príspevok NapísalOffline : 07.02.2009 15:24

no pretoze pri retazci sa to tam nedava pretoze m znamena ze ukazuje na dany retazec takzetak


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.08
Prihlásený: 15.05.15
Príspevky: 884
Témy: 3
Príspevok NapísalOffline : 07.02.2009 17:26

Hej, identifikator retazca predstavuje adresu prveho prvku (teda m je v podstate pointer), takze na ziskanie tejto adresy nepotrebujes referencny operator &... :)







_________________
Empty your memory, with a free()… like a pointer!
If you cast a pointer to an integer,
it becomes the integer, if you cast a pointer to a struct, it becomes the struct…
The pointer can crash…, and can overflow…
Be a pointer my friend…
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.06.08
Prihlásený: 04.07.11
Príspevky: 114
Témy: 12
Príspevok NapísalOffline : 08.02.2009 16:51

aha dakujem za vysvetlenie


Odpovedať na tému [ Príspevkov: 9 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. If else ...

v PHP, ASP

7

550

23.02.2010 20:05

neXor Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. nefunkcna podmienka else

v PHP, ASP

2

465

02.08.2010 21:32

coldak Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Lenovo, Asus, else?

v Notebooky a netbooky

4

557

11.02.2010 19:03

tralfamadorčan Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. problem s else if

v PHP, ASP

6

388

19.04.2008 13:40

Broko71 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Else a If vo foreach()

v PHP, ASP

3

436

22.04.2011 19:12

Blackshadow Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

v PHP, ASP

10

695

04.04.2008 11:25

mondzo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Vykoná sa mi aj else časť hoci sa už vykonala if - die mám

v PHP, ASP

11

579

20.10.2010 20:45

davider137 Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra