prc programe.doc

15
Seminar 2 (18.10.2012) Aplicatie 1 : Sa se realizeze un program care sa preia de la tastatura nume, prenume, adresa, varsta si numarul de telefon al unei persone. {string Nume, Prenume, Adresa, Varsta, Telefon; Console.Write("numele este:"); Nume=Console.ReadLine(); Console.Write("prenumele este:"); Prenume=Console.ReadLine(); Console.WriteLine("adresa este:"); Adresa=Console.ReadLine(); Console.WriteLine("varsta este:"); Varsta=Console.ReadLine(); Console.Write("numarul de telefon este:"); Telefon=Console.ReadLine(); Console.WriteLine(Nume+" " + Prenume); Console.WriteLine(Adresa); Console.WriteLine(Varsta); Console.WriteLine(Telefon);} Aplicatie 2: Se citesc de la tastatura 2 nr de tip intreg. Sa se calculeze suma lor folosind operatori. { int a, b, s; Console.Write("primul nr este:"); a = int.Parse(Console.ReadLine()); Console.Write("al doilea numar este:"); b=int.Parse(Console.ReadLine()); Console.WriteLine("suma numerelor este:"); s = a + b; Console.WriteLine(a + " si" + b + " = " + s); }

Upload: udrea-alexandra

Post on 02-Jan-2016

65 views

Category:

Documents


2 download

DESCRIPTION

programarea calculatoarelor

TRANSCRIPT

Page 1: Prc Programe.doc

Seminar 2 (18.10.2012)

Aplicatie 1 : Sa se realizeze un program care sa preia de la tastatura nume, prenume, adresa, varsta si numarul de telefon al unei persone.

{string Nume, Prenume, Adresa, Varsta, Telefon;Console.Write("numele este:");Nume=Console.ReadLine();Console.Write("prenumele este:");Prenume=Console.ReadLine();Console.WriteLine("adresa este:");Adresa=Console.ReadLine();Console.WriteLine("varsta este:");Varsta=Console.ReadLine();Console.Write("numarul de telefon este:");Telefon=Console.ReadLine();Console.WriteLine(Nume+" " + Prenume);Console.WriteLine(Adresa);Console.WriteLine(Varsta);Console.WriteLine(Telefon);}

Aplicatie 2: Se citesc de la tastatura 2 nr de tip intreg. Sa se calculeze suma lor folosind operatori.

{int a, b, s;Console.Write("primul nr este:");a = int.Parse(Console.ReadLine());Console.Write("al doilea numar este:");b=int.Parse(Console.ReadLine());Console.WriteLine("suma numerelor este:");s = a + b;Console.WriteLine(a + " si" + b + " = " + s);

}

Page 2: Prc Programe.doc

Seminar3 ( 25.10.2012)

Aplicatie 1: Sa se scrie o aplicatie care sa calculeze expresiile:

x+y , x-y , x*y , x/y , x%y , max(x,y) , radical din x, ++x ; oricare ar fi x, y numere intregi.

{

double x, y, sum, dif, cat, i, rest, max, radical, plus;

Console.Write("x="); x = int.Parse(Console.ReadLine()); Console.Write("y="); y = int.Parse(Console.ReadLine()); Console.WriteLine("suma numerelor este:"); sum = x + y; Console.WriteLine(x + " + " + y + "=" + sum); Console.Write("diferenta numerelor este:"); dif = x - y; Console.WriteLine(dif); Console.Write("catul numerelor este:"); cat = x / y; Console.WriteLine(cat); Console.Write("inmultirea numerelor este:"); i = x * y; Console.WriteLine(i); Console.Write("restul impartirii numerelor este:"); rest = x % y; Console.WriteLine(rest); Console.Write("maximul numerelor este:"); max = Math.Max(x, y); Console.WriteLine(max); Console.Write("radical din x este:"); radical = Math.Sqrt(x); Console.WriteLine(radical); Console.Write("x++ este:"); plus = ++x; Console.WriteLine(plus); Console.ReadLine();}

Page 3: Prc Programe.doc

Aplicatie 2: Sa se scrie un program prin care sa se afiseza valoarea radical din 2, valoarea lui pi si valoarea expresiei 210.

{ double x, y, z; x = Math.Sqrt(2); Console.WriteLine("radical de ordinul 2 este:" + x); y = Math.PI; Console.WriteLine("valoarea lui pi este:" + y); z = Math.Pow(2, 10); Console.WriteLine("2 la puterea 10 este:" + z); Console.ReadLine();

}

Aplicatie 3: Sa se scrie logaritmul in baza 10 a unui numar intreg.

{ double x; x = Math.Log10(5); Console.WriteLine("valoarea lg5 este:" + x); Console.ReadLine();

}

Aplicatie 4: Sa se scrie un program prin care se interschimba valorile doua numere de tip intreg citite de la tastatura.

{int x, y, aux;

Console.Write("x="); x = int.Parse(Console.ReadLine()); Console.Write("y="); y = int.Parse(Console.ReadLine()); aux = x; x = y; y = aux; Console.WriteLine("x="+x); Console.WriteLine("y="+y); Console.ReadLine();

}

Aplicatie 5: Sa se scrie o aplicatie care verifica apartenenta valorilor variabilei la intervalul[x,y].

Page 4: Prc Programe.doc

{ int a, x, y ; Console.Write("x este:"); x=int.Parse(Console.ReadLine()); Console.Write("y este:"); y=int.Parse(Console.ReadLine()); Console.Write("a:"); a=int.Parse(Console.ReadLine()); if (a >= x && a <= y)

Console.Write("a apartine[x,y]"); else;

Console.Write("a nu apartine[x,y]");

Console.ReadLine(); }

Page 5: Prc Programe.doc

Seminar4(01.11.2012&08.01.2012)

Aplicatie 1: Să se scrie o aplicaţie care citeşte coeficienţii unui sistem de două ecuaţii cu două necunoscute, determină soluţia acestuia şi o afişează. În cazul în care sistemul nu are o soluţie unică se afişează un mesaj de eroare.

{ double a, b, c, d, e, f, x, y;

Console.Write("introduceti a"); a=double.Parse(Console.ReadLine()); Console.Write("introduceti b"); b=double.Parse(Console.ReadLine()); Console.Write("introduceti c"); c=double.Parse(Console.ReadLine()); Console.Write("introduceti d"); d=double.Parse(Console.ReadLine()); Console.Write("introduceti e"); e=double.Parse(Console.ReadLine()); Console.Write("introduceti f"); f=double.Parse(Console.ReadLine()); double dets, det1, det2; dets = a * e - b * e; det1 = c * e - b * f; det2 = a * f - c * d; if (dets == 0) Console.WriteLine("sistemul nu are solutii"); else {x = det1 / dets; y=det2 / dets; Console.WriteLine(x); Console.WriteLine(y); }

Aplicatie 2: Să se scrie o aplicaţie care determină dacă un an calendaristic este bisect sau nu .

{ int an, a, b; Console.Write("introduceti an"); an = int.Parse(Console.ReadLine()); if (an < 1588) { a = an % 4; if (a == 0) Console.WriteLine("anul este bisect"); else Console.WriteLine("anul nu este bisect"); } else {a = an % 4; b =an % 100; if (a ==0 & b!=0) Console.WriteLine("anul este bisect"); else Console.WriteLine("anul nu este bisect"); }

Page 6: Prc Programe.doc

Aplicatie 3: Să se scrie o aplicaţie care determină greutatea optimă a unei persoane în funcţie de înălţimea şi vârsta acesteia.

{ double i, v, g; char s; Console.Write("introduceti inaltimea (cm)"); i = double.Parse(Console.ReadLine()); Console.Write("introduceti varsta"); v = double.Parse(Console.ReadLine());

Console.Write("introduceti sexul m/f"); s = Convert.ToChar(Console.ReadLine()); if (s == 'm') g = 50 + 0.75 * (i - 150) + 0.25 * (v - 20); else g = (50 + 0.75 * (i - 150) + 0.25 * (v - 20)) - 10; Console.WriteLine(g); }

Aplicatia 4: Să se scrie o aplicaţie care citeşte trei numere de tip double si calculează maximul dintre ele.

{ double a, b, c,max; Console.Write("introduceti cifra a:"); a = double.Parse(Console.ReadLine()); Console.Write("introduceti b:"); b = double.Parse(Console.ReadLine()); Console.Write("introduceti c:"); c = double.Parse(Console.ReadLine()); if (a > b && a > c) { max = a; Console.WriteLine("a este maxim"); } if (b > a && b > c) { max = b; Console.WriteLine("b este maxim"); } if (c > a && c > b) { max = c; Console.WriteLine("c este maxim"); } }

Page 7: Prc Programe.doc

Aplicatia 5. Să se verifice dacă 3 puncte din plan M1, M2 şi M3, date prin coordonatele lor întregi, sunt coliniare .{double x1, x2, x3, y1, y2, y3, e; Console.Write("x1="); x1 = double.Parse(Console.ReadLine()); Console.Write("x2="); x2 = double.Parse(Console.ReadLine()); Console.Write("x3="); x3 = double.Parse(Console.ReadLine()); Console.Write("y1="); y1 = double.Parse(Console.ReadLine()); Console.Write("y2="); y2 = double.Parse(Console.ReadLine()); Console.Write("y3="); y3 = double.Parse(Console.ReadLine()); e = (x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1); if (e == 0) Console.WriteLine("punctele sunt coliniare"); Console.WriteLine("punctele nu sunt coliniare"); Console.ReadLine();

}

Aplicatia 8: Să se scrie o aplicaţie prin care se efectuează calcule pentru două numere întregi şi se alege una dintre operaţiile aritmetice +,-,*,/ , % introduse de la tastatură .{ char op; int a, b, s, d, p, c, r; Console.Write("dati primul nr intreg:"); a = Convert.ToInt32(Console.ReadLine()); Console.Write("Dati al doilea nr intreg"); b = Convert.ToInt32(Console.ReadLine()); Console.Write("dati simbolul unui operator +, -, *, /, %"); op = (char)Console.Read(); switch (op) { case '+': {s=a+b; Console.WriteLine("suma numerelor="+s);} break; case '-': {d=a-b; Console.WriteLine("diferenta numerelor="+d);} break; case '*': {p=a*b; Console.WriteLine("produsul numerelor="+p);} break; case '/': {c=a/b; Console.WriteLine("catul numerelor="+c);} break; case'%': {r=a%b; Console.WriteLine("restul numerelor="+r);} break; default:Console.WriteLine("alt operator"); break; } Console.ReadKey(); }

Page 8: Prc Programe.doc

Seminar5si 6(15.11.2012&21.11.2012)

Aplicatia1&2: Calculaţi suma cifrelor unui număr natural cu maximum 9 cifre.si numarul invers.

{int nr, s = 0, i = 1, r, invers = 0, copie; Console.Write("nr="); nr = int.Parse(Console.ReadLine()); copie = nr; while (i < 9) { i++; r = nr % 10; nr = nr / 10; s = s + nr; } Console.WriteLine("suma numerelor este:" + s); Console.ReadKey(); while (copie != 0) { r = copie % 10; invers = invers * 10 + r; copie = copie / 10; } Console.WriteLine("inversul este=" + invers); Console.ReadLine();}

Aplicatia2: Să se scrie o aplicaţie prin care se calculează lungimea unui numar întreg şi lungimea unui şir.

Observatie Pentru a calcula lungimea unui şir se foloseşte metoda Length.

{int nr, r, lungimesir = 0;

Console.Write("nr="); nr = int.Parse(Console.ReadLine()); /*Console.Write("s="); s=Convert.ToChar(Console.ReadLine();*/ while (nr != 0) { lungimesir = lungimesir + 1; r = nr % 10; nr = nr / 10; } Console.Write("lungimea sirului este:" + lungimesir); Console.ReadLine();

}

Page 9: Prc Programe.doc

Aplicatia9. Să se calculeze cmmdc şi cmmmc pentru două numere citite de la tastatură. { int a, b, r, x, y; Console.Write("primul numar este:"); a = Convert.ToInt32(Console.ReadLine()); Console.Write("al doilea numar este:"); b = Convert.ToInt32(Console.ReadLine()); x = a; y = b; r = x % y; while (r != 0) { x = y; y = r; r = x % y; } if (y != 1) Console.WriteLine("cmmmdc este:" + a, b, y); else Console.WriteLine("{0} si {1} sunt prime"); Console.WriteLine("cmmmc,({0},{1})={2} este:"+ a/y*b); Console.ReadKey();

}

Aplicatia4. Să se scrie o aplicaţie prin care se numără câte cifre pare are un număr natural.

{ int nr, p, k = 0; Console.Write("nr:"); nr = int.Parse(Console.ReadLine()); while (nr != 0) { p = nr % 10; if (p % 2 == 0) { k++; } nr = nr / 10; } Console.WriteLine(k); Console.ReadLine();

}

Page 10: Prc Programe.doc

Aplicatia 5. Să se scrie o aplicaţie care verifică dacă un număr este prim. { int n, i; bool p = true; i= 2; Console.Write("introduceti n"); n = int.Parse(Console.ReadLine()); while (i <= n / 2) { if (n % i == 0) { p = false; } i = i + 1; } if (p) Console.WriteLine("nr" + n + "este prim"); else Console.WriteLine("nr" + n + "nu este prim"); Console.Read();

Aplicatia10. Să se afişeze numerele cu proprietatea de a fi palindroame, până la o valoare citită de la tastatură. De asemenea, să se afişeze şi numărul lor.int x, n, k = 0; do { Console.Write("scrieti un numar natural : "); n = Convert.ToInt32(Console.ReadLine()); if (n <= 0) Console.WriteLine("Eroare la citire!"); } while (n <= 0); Console.Write("Numerele palindroame mai mici strict decat {0} sunt :\n", n); x = 1; do { if (palindrom(x) == 1) { Console.Write(" {0,3} ", x); k++; } x++; } while (x < n); Console.WriteLine(); if (k == 0) Console.WriteLine("Nu exista numere!"); else Console.WriteLine("Sunt {0} numere palindroame!", k); } static uint palindrom(int x) { int y = 0, z = x; do { y = y * 10 + z % 10; z /= 10;

Page 11: Prc Programe.doc

} while (z != 0); if (y == x) return 1; else return 0;Console.ReadLine();

seminar 7(28.11.2012)Aplicaţia 1 :Să se scrie o aplicaţie prin care se numără câte cifre pare are un număr

natural.

{ static int cfpare(int n) { int nr,r,t = 0;

while(n!=0) { nr=n%10; n = n / 10; if(nr%2==0) t=t+1; }return t; } static void Main(string[] args) { int nr, cp=0 ; Console.Write("nr="); nr = int.Parse(Console.ReadLine()); cp = cfpare(nr); Console.WriteLine("nr cifrelor pare="+cp); Console.ReadLine();

}Aplicaţia 5Se citeşte un număr natural n. Să se determine cifra maximă din număr, folosind un

subprogram.     Exemplu:  Dacă n=7934 , atunci cifra maximă este 9.{static int cfmaxima(int n) {int r,max; max= n%10; while (n!=0) { r=n%10; if(r>max) max=r; n = n / 10; } return max; }

static void Main(string[] args) { int n, max; Console.Write("n="); n = int.Parse(Console.ReadLine()); max=cfmaxima(n); Console.WriteLine("cifra maxima=" +max);

Page 12: Prc Programe.doc

Seminar 9(06.12.2012)

Aplicaţia 1 Se citeşte de la tastatură un text format din cuvinte. Cuvintele sunt separate prin câte un

spaţiu. Se cere să se afişeze toate cuvintele, fiecare pe câte un rând şi de asemenea să se determine lungimea maximă a unui cuvânt.

{string text =”Acestaesteuntext.Secereseparareaincuvinte”;string[ ] cuvinte=text.Split(` `);int max=0;foreach ( string cuv. in cuvinte ){if ( max<cuv.Lenght)max=cuv.Lenght;Console.WriteLine(cuv);}Console.WriteLine(“ Lungimea maxima a unui cuvant este “+max);}}

Aplicaţia 2 Se citeşte de la tastatură un şir de numere separate prin câte un spaţiu. Să se determine suma numerelor.{string sir;int s=0;Console.Write(“Introduceti un sir separate prin spatiu”);sir=Convert.ToString(Console.ReadLinec));string[ ] cuvinte=sir.Split(` ` );foreach(string cuvant in cuvinte ){ s=s + Convert to int16(cuvant);}Console.WriteLine( S );}

Aplicaţia 3 Se consideră un text în care cuvintele sunt separate prin: spaţiu . , : ; ? ! Între două cuvinte pot fi sunt unul sau mai mulţi separatori. Se cere descompunerea textului în cuvinte.{string sir;Console.Write(“introduceti un text”);Console.ReadLine( ) ;char[ ] separatori = {` ` , `, `, ` - ` , `. ` , `; ` , ` : ` , ` ! `, ` ? ` };string cuvinte = sir.Split ( ` ` );{ foreach ( string cuvant in cuvinte ) }

Page 13: Prc Programe.doc

Console.WriteLine ( cuvant);}

Seminar10(12.12.2012)