Kezdőoldal » Számítástechnika » Programozás » C nyelvre ezt hogyan tudom...

C nyelvre ezt hogyan tudom átírni?

Figyelt kérdés

[link]


Mert az ifnél mindig hibát jelez nekem.

az enyém, if sor: if((i*i*i)+(j*j*j)+(k*k*k)=i*100+j*10+k)

printf("%d",i*100+j*10+k);



Légyszi segítsetek, köszi!!


2015. ápr. 12. 18:21
1 2
 1/12 anonim ***** válasza:

Az if feltételedben a baloldali kifejezés nem módosítható.

C -ben a = értékadó operátor. == -re cseréld

2015. ápr. 12. 18:46
Hasznos számodra ez a válasz?
 2/12 A kérdező kommentje:
logikai egyenlővel, elindul már, de viszont a printf nemírki számot
2015. ápr. 12. 18:49
 3/12 anonim ***** válasza:
Akkor nyilván nem teljesül a feltétel.
2015. ápr. 12. 19:43
Hasznos számodra ez a válasz?
 4/12 anonim ***** válasza:

#include <stdio.h>


int main()

{

int i, j, k;


printf("A haromjegyu Armstrong-szamok a kovetkezok:");

for(i = 1;i <= 9;i++)

for(j = 0;j <= 9;j++)

for(k = 0;k <= 9;k++) if(i*i*i+j*j*j+k*k*k == i*100+j*10+k) printf(" %d,",i*100+j*10+k);

printf("\b.\n");

return 0;

}


Ennyi az egész, miben tér el a te kódod?

2015. ápr. 12. 20:39
Hasznos számodra ez a válasz?
 5/12 A kérdező kommentje:

Nemtudom, mivolt a hibám, de újraírtam. Mostmár működik!

A \b és a return 0; az mire jó? (a return az vár hogy nyomj meg egy billentyűt?)


#include<stdio.h>

main()

{

int i,j,k;

printf("A haromjegyu Armstrong szamok a kovetkezok: ");

for(i=1;i<=9;i++)

for(j=0;j<=9;j++)

for(k=0;k<=9;k++)

if(i*i*i+j*j*j+k*k*k==i*100+j*10+k)

printf("%d, ",i*100+j*10+k);

}

2015. ápr. 13. 17:01
 6/12 anonim ***** válasza:

Miért nem próbáltad ki magad, hogy megtudd, hogy a return esetében várakozik-e a program? :)


Egyébként nem, a return a függvény visszatérési pontja, ahol a függvényhez rendelt típusnak megfelelő értékkel térsz vissza. A te main() függvényed hibás, mert a jelenlegi C standard szerint int típusú kell, hogy legyen a main() függvény. return 0 -> a program hiba nélkül lefutott, return 1 -> általános futási hibák, stb.

2015. ápr. 13. 17:45
Hasznos számodra ez a válasz?
 7/12 anonim ***** válasza:
A \b-re pedig itt találsz választ: [link]
2015. ápr. 13. 17:45
Hasznos számodra ez a válasz?
 8/12 A kérdező kommentje:
Nekünk ezt a tanár már második éve így tanítja, hogy simán: main() :D azért marhajó mondjuk xd
2015. ápr. 13. 18:11
 9/12 A kérdező kommentje:

Ezt nemvágom, nemakar működni, mindig 10; et ír. Segitesz ebben is légyszi? :) köszi


[link]


én kódom:


#include <stdio.h>

main()

{

int i,j;

i=10;

while(i>0)

{

for(j=i;j<=1;j--)

{

printf("[I]");

}

if(j%2!=0)

printf("%d:",j);

else

printf("%d;",i);

i=i-j;

printf("\n");

}

}

2015. ápr. 13. 18:20
 10/12 anonim ***** válasza:

Segítek szívesen, ha felhasználod azokat a dolgokat, amit tanítok, különben nincs értelme. Az új kódodban miért megint típus nélküli main()-t használsz, mikor nemrég írtam, hogy az helytelen?


A tanárod rosszul tanította idáig, valószínűleg csak megtanult ezt-azt a C-ből, hogy le tudja adni a tantervben előírt kötelező anyagot.


Az új problémádat megnéztem a linkelt oldalon, de az a pszeudokód egy baromság, remélem nem a tanárod töltötte fel azt a hülyeséget... J értéke C-ben mindig 0 lesz, de más programnyelvekben sem működne ez a kód. Át kellett szabni, működőképesen így néz ki:

#include <stdio.h>


int main()

{

int i = 10, j;


while(i > 0)

{

for(j = i;j >= 1;j--) printf("[I]");

if(i%2) printf("%d:\n",i); else printf("%d;\n",i);

i--;

}

return 0;

}

2015. ápr. 13. 18:45
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!