Olimpiada Naţională de Informatică pentru Gimnaziu

Clasa a V-a

 

Problema 1 – La şcoală

 

Directorul unei şcoli doreşte să premieze la sfârşitul anului şcolar pe cei mai buni elevi la învăţătură. Pentru acest lucru el are de rezolvat două probleme:

1.       Să determine câţi elevi vor fi premiaţi dintre cei n (2<=n<=700) elevi ai şcolii. După discuţii aprinse cu ceilalţi profesori se hotărăşte în Consiliul Profesoral ca numărul premianţilor să fie n-k, unde k este cel mai mare număr pătrat perfect mai mic strict decât n. De exemplu, pentru n=150, k este 144 (pentru că 144=122), deci vor fi premiaţi 150-144=6 elevi.

2.       Pentru a fi cât mai multă linişte la premiere, în Consiliul Profesoral se ia decizia  ca elevii care nu vor fi premiaţi să fie aşezaţi pe terenul de sport pe rânduri de câte p elevi (unde p2=k). În acest scop, directorul a numerotat elevii nepremiaţi de la 1 la k şi a hotărât ca elevii să fie aşezaţi în ordinea descrescătoare a numerelor asociate.

 

Cerinţă

Scrieţi un program care:

        citeşte de la tastatură n, numărul de elevi din şcoală;

        determină şi afişează pe ecran numărul de elevi premiaţi;

        afişează pe ecran modul de aşezare a elevilor nepremiaţi

 

Exemplu

Un exemplu de execuţie a programului creat de voi ar putea fi:

Introduceţi numărul de elevi din scoala n = 35

Numarul de elevi premiati: 10

Elevii nepremiati:

25 24 23 22 21

20 19 18 17 16

15 14 13 12 11

10  9  8  7  6

 5  4  3  2  1

 

Problema 2 – Balaur

 

A fost o dată un balaur cu 6 capete. Într-o zi Făt-Frumos s-a supărat şi i-a tăiat un cap. Peste noapte i-au crescut alte 6 capete în loc. Pe acelaşi gât! A doua zi, Făt-Frumos iar i-a tăiat un cap, dar peste noapte balaurului i-au crescut în loc alte 6 capete ... şi tot aşa timp de n zile. În cea de a (n+1)-a zi, Făt-Frumos s-a plictisit şi a plecat acasă!

 

Cerinţă

Scrieţi un program care citeşte de la tastatură n, numărul de zile, şi care afişează pe ecran câte capete avea balaurul după n zile.

 

Exemplu

Pentru n=3, programul va afişa:

Dupa 3 zile balaurul are 15 capete.

 

Explicaţie:

Iniţial balaurul avea 6 capete. În prima zi Făt-Frumos i-a tăiat un cap şi i-au rămas 5.

Peste noapte i-au crescut alte 6, deci a doua zi dimineaţa balaurul avea 11 capete. În cea de a doua zi Făt-Frumos îi mai taie balaurului un cap, deci balaurul rămâne cu 10 capete. Peste noapte îi mai cresc 6, astfel că a treia zi dimineaţă balaurul avea 16 capete. Dar în cea de a treia zi Făt-Frumos îi mai taie balaurului un cap, deci după cea de a treia zi balaurul a rămas cu 15 capete.

 

Notă:

Timp de lucru: 3 ore. Fiecare problemă se punctează cu 100 puncte.