Informatică, întrebare adresată de Truber, 8 ani în urmă

Va rog ptr. Code::Blocks dau 50 de puncte
Se consideră algoritmul alăturat, descris în pseudocod. S-a notat cu x%y restul împărţirii numărului natural x la numărul natural nenul y şi cu [z] partea întreagă a numărului real z.
a) Scrieţi programul C/C++ corespunzător algoritmului dat
b) Dacă pentru variabila a se citeşte valoarea 58 scrieţi toate valorile care, citite pentru variabila b, determină afişarea numărului 3.
c). Scrieţi numărul ce se va afişa dacă pentru a se citeşte valoarea 404, iar pentru b se citeşte valoarea 413.
d) Scrieţi în pseudocod un algoritm echivalent cu algoritmul dat în care să se înlocuiască structura repetitivă pentru...execută cu o structură repetitivă de un alt tip.
citește a,b (numere naturale, a≤b)
k<--0
┌pentru i<--a,b execută
│ n<--i; c<--0
│ ┌cât timp n>0 execută
│ │ ┌dacă n%2=1 atunci
│ │ │ c<--c+1
│ │ └■
│ │ n<--[n/10]
│ └■
│ │¬ daca c>0 atunci
│ │ k¬k+1
│ └■
└■
scrie k

Răspunsuri la întrebare

Răspuns de cosmaandra2000
1

Am atașat poze. Programul determina câte numere cu măcar o cifră impară sunt în acel interval între a și b. La punctul b răspunsul corect este 61 și 62 pentru că de la 58 k devine 1 de la 59 devine 2 la 60 nu se întâmplă nimic la 61 devine trei apoi la 62 nu este nici o cifră impară deci k ramane 3, iar la 63, k ul se schimba.

Anexe:
Alte întrebări interesante