Kezdőoldal » Számítástechnika » Programozás » Mit csinál ez a program?...

Mit csinál ez a program? Pontosabban a for ciklusa? (C)

Figyelt kérdés

#include <cstdio>

using namespace std;


int main() {

int num = 123456789;

int res = 0;

for(;num;num/=10)

{

res=res*10+(num%10)*7%10;

}

printf("06 %09d", res);

return 0;


}



2017. márc. 3. 13:12
 1/5 anonim ***** válasza:
Fogja a num számjegyeit hátulról, megszorozza 7-tel, veszi a kapott szám utolsó számjegyét és hozzáfűzi a res szám végére.
2017. márc. 3. 13:28
Hasznos számodra ez a válasz?
 2/5 A kérdező kommentje:

és ha az a feladat, h milyen számot írjunk be a num helyére, hogy a saját telefonszámunkat kapjuk meg, akk megvan matematikailag, h kell

viszont, ha 0-ra végződik a telefonszám, akkor 0-ával kezdődő számsort kellene beírni az 123456789 helyére, ami viszont hibát dob ki :D

2017. márc. 3. 13:38
 3/5 anonim ***** válasza:
Véletlenszerűnek tűnő telefonszámokat állít elő, csak mindezt rettentően gányolva.
2017. márc. 3. 13:39
Hasznos számodra ez a válasz?
 4/5 A kérdező kommentje:

023456789-el nem fut le és ezt a hiba kódot dobja:

prog.cpp:5:12: error: invalid digit "9" in octal constant


de ahhoz, h 0-val végződjön a telefonszám nem lehet más :D

2017. márc. 3. 13:46
 5/5 anonim ***** válasza:
100%
Bocsi, a problémába nem akarok túlságosan belemerülni, csak annyi, hogy a szám elé semmi értelme 0-t rakni, hiszen matematikailag értelmetlen, a C pedig ha 0-t raksz az elejére akkor 8-as számrendszerben értelmezi (ezért hibás a 9). (A program meg nem is tudja megnézni hogy volt e előtte 0, csak egy bináris számot lát miután lefordul)
2017. márc. 3. 14:41
Hasznos számodra ez a válasz?

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!