Teste de informatică pentru liceu, articole C#, C/C++, PHP
Rândul 1
Subiectul I (2 puncte) Fie algoritmul:
citeşte a
p : = 1
b : = 0
┌cât timp a ≠ 0 execută
│ c := a mod 10
│ ┌dacă a mod 2 = = 0 atunci
│ │ b := b + c * p
│ │altfel
│ │ b := b * 10 + c
│ └■
│ a := a div 10
│ p := p * 10
└■
scrie b
Subiectul II (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi determină numărul cifrelor impare ale lui n.
Subiectul III (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi verifică dacă n este sau nu prim.
Subiectul IV (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi apoi un şir de n numere naturale nenule. Să se determine numărul valorilor pare din şir.
Subiectul V (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi calculează suma S = 13 + 23 + 33 + ... + n3
Subiectul VI (2 puncte) Se consideră şirul 1, 1, 2, 3, 5, 8, 13, 21, ... în care primele două valori sunt 1, apoi fiecare termen este dat de suma precedenţilor doi termeni. Acest şir se numeşte şirul lui Fibonacci. Scrieţi un algoritm care citeşte un număr natural n şi afişează al n-lea termen al şirului Fibonacci. De exemplu, pentru n=6, se va afişa 8.
Notă: Se acordă 1 punct din oficiu. Orice punctaj care depăşeşte 10 puncte va fi notat cu 10.
Rândul 2
Subiectul I (2 puncte) Fie algoritmul:
citeşte n (număr natural nenul)
m := 0
v := n
u := n mod 10
┌repetă
│ c := n mod 10
│ v := v * 10 + c
│ ┌dacă c = = u atunci
│ │ m := m + 1
│ └■
│ n := n div 10
└până când n = 0
scrie v, m
Subiectul II (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi determină cifra maximă a lui n.
Subiectul III (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi afişează mesajul Toate impare dacă n conţine doar cifre impare, sau afişează mesajul Nu toate impare dacă există măcar o cifră pară.
Subiectul IV (2 puncte) Scrieţi un algoritm care citeşte un şir de n numere naturale nenule până la întâlnirea valorii 0. Să se determine numărul valorilor divizibile cu 3 din şir.
Subiectul V (2 puncte) Scrieţi un algoritm care citeşte un număr natural n şi calculează produsul P = 1 * 2 * 3 * ... * n
Subiectul VI (2 puncte) Se consideră şirul 1, 1, 2, 3, 5, 8, 13, 21, ... în care primele două valori sunt 1, apoi fiecare termen este dat de suma precedenţilor doi termeni. Acest şir se numeşte şirul lui Fibonacci. Scrieţi un algoritm care citeşte un număr natural p > 0 şi verifică dacă p este sau nu termen al şirului Fibonacci. Algoritmul va afişa unul din mesajele Este termen al şirului sau Nu este termen al şirului.
Notă: Se acordă 1 punct din oficiu. Orice punctaj care depăşeşte 10 puncte va fi notat cu 10.
Dan Pracsiu deţinător www.dponline.ro
Profesor, Liceul Teoretic "Emil Racoviță" Vaslui
Membru în Comisia Naţională a Olimpiadelor de Informatică
Pasiuni: istoria, călătoriile, fotografia, muzica clasică