tema informatica 9

3
Tema (Algoritmi pentru calculul celui mai mare divizor comun) 1/61. Se citesc de la tastatură două numere naturale n și k ( 2 ≤ k n ). Să se afișeze toate perechile de numere naturale mai mici decât n al căror c.m.m.d.c. este k. întreg n, k , i, j, a, b; început scrie n=; citește n ; scrie k=; citește k ; pentru i 2, n execută pentru j 2, n execută a i ; b j ; cât_timp a b execută dacă a > b atunci a a b ; altfel b b a ; sfârșit_dacă ; sfârșit_cât_timp ; dacă a = k atunci scrie (, i, ,, j, ); sfârșit_dacă ; sfârșit_pentru ; sfârșit_pentru ; sfârșit. 2/61. Să se scrie algoritmul prin care se calculeaza c.m.m.d.c. și c.m.m.m.c a trei numere introduse de la tastatură. întreg a, b, c, a1, b1, c1 ; început scrie a=; citește a ; scrie b=; citește b ; scrie c=; citește c ; a1 a ; b1 b ; c1 c ; cât_timp a1 ≠ b1 execută dacă a1 > b1 atunci a1 a1-b1 ; altfel b1 b1-a1 ; sfârșit_dacă ; sfârșit_cât_timp ; cât_timp a1 ≠ c1 execută dacă a1 > c1 atunci a1 a1-c1 ; altfel c1 c1-a1 ; sfârșit_dacă ; sfârșit_cât_timp ; scrie C.M.M.D.C. al numerelor , a, ,, b, si , c, este , a1 ; c1 (a*b*c) / a1 ; scrie C.M.M.M.C. al numerelor , a, ,, b, si , c, este , c1 ; sfârșit.

Upload: alin-fanase

Post on 29-Mar-2016

224 views

Category:

Documents


6 download

DESCRIPTION

Tema rezolvata informatica cls 9 - CMMDC - Nr prime

TRANSCRIPT

Page 1: tema informatica 9

Tema (Algoritmi pentru calculul celui mai mare divizor comun)

1/61. Se citesc de la tastatură două numere naturale n și k ( 2 ≤ k ≤ n ). Să se afișeze toate perechile de numere naturale

mai mici decât n al căror c.m.m.d.c. este k.

întreg n, k , i, j, a, b;

început

scrie “n=” ;

citește n ;

scrie “k=” ;

citește k ;

pentru i 2, n execută

pentru j 2, n execută

a i ;

b j ;

cât_timp a ≠ b execută

dacă a > b atunci

a a – b ;

altfel

b b – a ;

sfârșit_dacă ;

sfârșit_cât_timp ;

dacă a = k atunci

scrie “(”, i, “,”, j, “)” ;

sfârșit_dacă ;

sfârșit_pentru ;

sfârșit_pentru ;

sfârșit.

2/61. Să se scrie algoritmul prin care se calculeaza c.m.m.d.c. și c.m.m.m.c a trei numere introduse de la tastatură.

întreg a, b, c, a1, b1, c1 ;

început

scrie “a=” ;

citește a ;

scrie “b=” ;

citește b ;

scrie “c=” ;

citește c ;

a1 a ;

b1 b ;

c1 c ;

cât_timp a1 ≠ b1 execută

dacă a1 > b1 atunci

a1 a1-b1 ;

altfel

b1 b1-a1 ;

sfârșit_dacă ;

sfârșit_cât_timp ;

cât_timp a1 ≠ c1 execută

dacă a1 > c1 atunci

a1 a1-c1 ;

altfel

c1 c1-a1 ;

sfârșit_dacă ;

sfârșit_cât_timp ;

scrie “C.M.M.D.C. al numerelor “, a, “,”, b, “ si ”, c, “ este ”, a1 ;

c1 (a*b*c) / a1 ;

scrie “C.M.M.M.C. al numerelor ”, a, “,”, b, “ si ”, c, “ este ”, c1 ;

sfârșit.

Page 2: tema informatica 9

3/61. Să se afișeze toate numerele naturale, mai mici decât un număr natural n, care sunt prime cu n, n introducându-se

de la tastatură (două numere naturale se numesc prime între ele dacă cel mai mare divizor comun al lor este 1).

întreg n, i , a, b ;

început

scrie “n=” ;

citește n ;

pentru i 2, n-1 execută

a n ;

b i ;

cât_timp a ≠ b execută

dacă a > b atunci

a a-b ;

atunci

b b-a ;

sfârșit_dacă ;

sfârșit_cât_timp ;

dacă a = 1 atunci

scrie i, “ “ ;

sfârșit_dacă ;

sfârșit_pentru ;

sfârșit.

Tema (Algoritmi pentru testarea unui număr prim)

1/64. Se introduc n numere de la tastatură. Să se afișeze numerele prime.

întreg n, i, j, x ;

logic prim ;

început

scrie “n=” ;

citește n ;

pentru i=1, n execută

scrie “x=” ;

citește x ;

prim adevărat ;

pentru j 2, [n/2] execută

dacă x % j = 0 atunci

prim fals ;

j n ;

sfârșit_dacă ;

sfârșit_pentru ;

dacă prim = adevarat atunci

scrie x, “ ” ;

sfârșit_dacă ;

sfârșit_pentru ;

sfrșit.

2/64. Să se afișeze primele n numere prime, n introducându-se de la tastatură.

întreg n, i, j, x ;

logic prim ;

început

scrie “n=” ;

citește n ;

i 0;

x 2;

execută

prim adevărat ;

pentru j 2, [n/2] execută

Page 3: tema informatica 9

dacă x % j = 0 atunci

prim fals ;

j n ;

sfârșit_dacă ;

sfârșit_pentru ;

dacă prim = adevarat atunci

scrie x, “ ” ;

i i+1 ;

sfârșit_dacă ;

x x+1 ;

cât_timp i<n ;

sfârșit.

3/64. Să se afișeze primele n numere prime care au suma cifrelor mai mică decat un număr m, n și m introducându-se de

la tastatură.

întreg m, n, S, i, j, x, prim ;

început

scrie “n=” ;

citește n ;

scrie “m=” ;

citește m ;

i 0 ;

x 2 ;

execută

prim adevărat ;

pentru j 2, [n/2] execută

dacă x % j = 0 atunci

prim fals ;

j n ;

sfârșit_dacă ;

sfârșit_pentru ;

dacă prim = adevarat atunci

S 0 ;

j x ;

cat_timp j ≠ 0 execută

S S + j%10 ;

j j / 10 ;

sfârșit_cât_timp ;

dacă S < m atunci

scrie x, “ “ ;

i i+1 ;

sfârșit_dacă ;

sfârșit_dacă ;

cat_timp i<n ;

sfârșit.