Risipa de key_press | Programare

Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Risipa de key_press | Programare - Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Exercitii rezolvate in c# si c++

O lista cu exercitii de programare rezolvate in c# – unele sunt in lucru, altele, cele care au un link, sunt publicate:

  1. Interschimbare valori – Interschimbaţi conţinutul a două numere de tip întreg citite de la tastatură.
  2. Ecuatia de gradul I – Să se rezolve ecuaţia de gradul I de forma ax+b=0, cu coeficienţi numere reale.
  3. Ecuatia de gradul II -Să se rezolve o ecuaţie de gradul II de forma ax2+bx+c=0, cu coeficienţi numere reale.
  4. Conversia secundelor – Scrieţi un program care primeşte la intrare un număr de secunde şi întoarce numărul maxim de ore, de minute, de secunde care este echivalent ca timp.
  5. Calculator – Scrieţi un program care simulează un calculator electronic pentru numere întregi: se introduc două numere întregi şi o operaţie care poate fi +, -, *, /, reprezentând adunarea, scăderea, înmulţirea şi câtul.
  6. Inmultire prin adunare – Înmultirea a două numere naturale prin adunări repetate.
  7. Impartire prin scadere – Împărţirea a două numere prin scăderi repetate.
  8. Ghiceste numarul – Să se ghicească un număr întreg din intervalul 1 – 100.
  9. Factorial – Să se calculeze n!=1*2*3*…*n (factorialul lui n), pentru un n natural citit de la tastatură.
  10. Suma cifre – Calculaţi suma cifrelor unui număr natural dat cu maximum 9 cifre.
  11. Fiind date două numere naturale n şi m, să se formeze un nou număr care să conţină cifrele maxime de pe fiecare poziţie din n şi m. Ex: n=2618, m=3456 → 3658
  12. c.m.m.d.c – Să se determine c.m.m.d.c. a două numere naturale. (2 variante)
  13. Divizori comuni – Să se afişeze toţi divizorii (proprii) comuni a două numere naturale.
  14. Numere perfecte – Să se determine toate numerele ”perfecte” mai mici decât 10000. Un număr este perfect dacă este egal cu suma tuturor divizorilor săi (inclusiv 1).
  15. Numar prim – Testaţi dacă un număr natural dat este prim. (Prin număr prim înţelegem orice număr natural care se împarte doar la 1 şi la el însuşi; se considera ca 2 este cel mai mic număr prim).
  16. Exercitiu – Se citeşte de la tastatură un număr natural x mai mare decât 2. Sa se găsească p şi q numere prime astfel încât p<x<q, iar diferenta q-p este minima.
  17. Conjectura lui Goldbach -Se citeşte de la tastatură un număr natural par. Sa se decida dacă acesta poate fi scris ca şi suma de două numere prime şi sa se afişeze toate soluţiile găsite (se va considera ca şi 1 este număr prim). (Conjectura lui Goldbach: “Orice număr par mai mare decat 2 este suma a două numere prime.”)
  18. Se citeşte de la tastatură un număr natural. Sa se decida dacă acesta poate fi scris ca şi suma de două patrate şi sa se afişeze toate soluţiile găsite.
  19. Perechi de numere prime – Sa se afişeze primele n perechi de numere prime care sunt consecutive în multimea numerelor impare.
  20. Factori primi – Sa se descompună un număr natural n în factori primi. Ex: 360=23*32*51
  21. Se citesc de la tastatură n numere naturale şi un număr prim p. Se cere să se găsească un număr k maxim astfel încât produsul celor n numere să se dividă cu pk, fără a calcula produsul. Ex: p=2, cele 4 numere sunt: 10=21*5, 8=23, 3=20*3, 28=22*7 → k=6
  22. Exercitiu – Se citesc n nr nat de la tastatură. Sa se determine în câte zerouri se va termina produsul acestora, fără a calcula efectiv produsul. Ex: 12, 35, 30, 75 → 3 zerouri
  23. Sa se calculeze nm efectuand mai putin de m-1 inmultiri. (Atentie la valorile n şi m, ca rezultatul sa nu depaseasca cel mai mare int (232)!. Ex: se poate calcula cel mult 231, 320, 513, etc. )
  24. Exercitiu – Sa se afiseze media aritmetica, geometrica si hiperbolica a trei valori reale.
  25. Exercitiu – Se citeste o propozitie (sir de caractere). Sa se determine cate vocale si consoane contine propozitia.
  26. Vectori

  27. Minimul si maximul unui vector – Dat fiind un tablou unidimensional (vector) cu numere întregi, determinaţi minimul şi maximul din acest tablou.
  28. Conversia unui numar din baza 10 in baza 2 – Să se transforme un nr nat din baza 10 în baza 2.
  29. Conversia unui numar natural din baza 10 in baza 16 – Să se transforme un nr nat din baza 10 în baza 16.
  30. Conversia unui numar natural din baza 10 – Să se transforme un număr natural din baza 10 în baza b[2, 9].
  31. Conversia unui numar natural din baza 2 in baza 10 – Să se transforme un nr nat din baza 2 în baza 10.
  32. Conversia unui numar natural din baza 16 in baza 10 – Să se transforme un nr nat din baza 16 în baza 10.
  33. Să se transforme un nr nat din baza b[2, 9] în baza 10.
  34. Fiind dat polinomul de gradul n cu coeficienti reali P(X)=anXn+an-1Xn-1+…+a1X+a0, să se calculeze P(x), unde x este un nr real dat. Ex: P(X)=3X^2-X+1, x=2, P(2)=11
  35. Fiind dat polinomul de gradul n cu coeficienti reali P(X), să se calculeze P(x)(x-b), unde b este un nr real dat.
  36. Sa se calculeze derivata de ordin întâi a unui polinom de grad n cu coeficienti întregi, reprezentat cu ajutorul unui vector.
  37. Sa se determine catul şi restul impartirii unui poliom de grad n cu coef întregi la (X-b), folosind schema lui Horner.
  38. Adaugarea unui element intr-un vector – Sa se adauge un element în interiorul unui vector de numere reale, fără a suprascrie elementele deja existente.
  39. Stergerea unui element dintr-un vector – Sa se stearga un element din interiorul unui vector de numere reale şi sa se acopere spatiul ramas gol prin deplasarea spre stanga a tuturor elementelor din dreapta sa.
  40. Sa se simuleze ciurul lui Eratostene (algoritm cu ajutorul căruia pot fi determinate numerele prime mai mici decât un număr dat) intr-un vector de n numere naturale.
  41. Reuniunuea a doua multimi – Se dau două mulţimi de numere întregi memorate cu ajutorul vectorilor. Să se calculeze reuniunea celor două mulţimi.
  42. Intersectia a doua multimi – Sa se calculeze intersectia a două multimi de numere reale reprezentate cu ajutorul vectorilor.
  43. Diferenta a doua multimi – Sa se calculeze diferenta A/B a două multimi A, B de numere reale reprezentate cu ajutorul vectorilor (diferenta semnifica elementele care sunt în A şi nu sunt şi în B).
  44. Numere pare – Sa se afiseze elementele de pe pozitiile pare ale elementelor vectorului. Sa se afiseze elementele pare.
  45. Numere pare de pe pozitii impare – Sa se afiseze elementele pare de pe pozitiile impare.
  46. Numere pare, impare, pozitive, negative dintr-un vector – Sa se afiseze cate elemente din vector sunt pare si cate impare. Sa se afiseze cate elemente din vector sunt pozitive si cate negative.
  47. Suma elementelor din prima jumatate a vectorului – Sa se calculeze suma
    elementelor din prima jumatate a vectorului.
  48. Inversarea ordinii elementelor dintr-un vector – Sa se inverseze ordinea elementelor dintr-un vector.
  49. Siruri

  50. Cautarea unui caracter intr-un sir – Cautarea unui caracter intr-un sir si afisarea numarului de aparitii.
  51. Litere mari, litere mici, numere intr-un sir – Afisarea aparitiilor pentru literele mari, mici si a numerelor dintr-un sir.
  52. Matrici

  53. Transpusa unei matrici – Construirea transpusei unei matrici oarecare de elemente reale.
  54. Interschimbarea a doua linii intr-o matrice– Interschimbarea a două linii (coloane) dintr-o matrice oarecare de elemente reale.
  55. Valoarea maxima dintr-o matrice – Sa se calculeze valoarea maxima dintr-o matrice oarecare de elemente reale şi sa se afişeze toate pozitiile din matrice unde se gaseste aceasta.
  56. Valoarea minima dintr-o matrice – Sa se calculeze valoarea minima dintr-o matrice oarecare de elemente reale şi sa se afişeze numărul de aparitii al acestei valori în matrice.
  57. Parcurgerea diagonalei principale – Sa se calculeze suma elementelor de pe diagonala principala dintr-o matrice pătratică de elemente întregi.
  58. Parcurgerea diagonalei secundare – Sa se afiseze elementele de pe diagonala secundara dintr-o matrice pătratică de elemente întregi.
  59. Parcurgerea elementelor de sub diagonala principala – Sa se calculeze suma elementelor din triunghiul de sub diagonala principala dintr-o matrice pătratică de elemente întregi.
  60. Parcurgerea elementelor aflate deasupra diagonalei secundare – Sa se calculeze suma elementelor din triunghiul de deasupra diagonalei secundare dintr-o matrice pătratică de elemente întregi.
  61. Sa se calculeze suma elementelor din triunghiul de sub diagonala secundara dintr-o matrice pătratică de elemente întregi.
  62. Sa se verifice care dintre liniile unei matrici oarecare de elemente întregi este simetrica (elementele egal departate de capetele liniei sunt egale).
  63. Produsul dintre o matrice si un vector – Sa se calculeze produsul dintre o matrice şi un vector de elemente întregi.
  64. – Numar suma de patrate perfecte – Se citeşte de la tastatură un număr natural. Sa se decida dacă acesta poate fi scris ca şi suma de două patrate şi sa se afişeze toate soluţiile găsite.

Explicatii

Pe masura ce voi mai reusi sa adun exercitii rezolvate le voi publica si adauga in lista.
Daca vrei sa ma ajuti sa realizez o baza de date cu exercitii de programare cu rezolvare in c# te rog sa imi trimiti printr-un comentariu o problema impreuna cu rezolvarea ei. Daca vrei sa primesti credit pentru ceea ce ai trimis, lasa-mi o linie cu datele tale: nume, url blog (daca ai), pseudonim, email (daca il vrei publicat) etc.

Poti trimite, deasemeni, rezolvari diferite ale aceleasi probleme. Sau rezolvari ale problemelor inca nerezolvate (cele care nu au link spre o pagina de rezolvare).

Un alt mod de a contribui este prin traducerea codului c# ce reprezinta rezolvarea exercitiilor din aceasta pagina intr-un alt limbaj. Cu cat sunt mai multe limbajele in care sunt prezentate rezolvarile, cu atat mai multi elevi vor primi ajutor atunci cand dau de greu.

Multumesc.

  • Bruss Andreia says:

    Salut! Am o problema in c# despre algoritmul de extragere a cifrelor dintr un numar. Ma cam incurca algoritmul butoanelor :D, e o problema pentru atestat. Putin ajutor? Multumesc frumos!

    February 13, 2017 at 12:21 pm
  • vadim says:

    Ajutati-ma va rog! Sint date doua masive bidimensionale X[N,M] si Y[M,M].De calculat produsul dintre elementul minimal de sub diagonala principala a masivului X si elementul minimal de sub diagonala principala a masivului Y.

    March 2, 2017 at 10:18 am
  • Iulian Pamfil says:

    Rezolvare C# ex 11:

    using System;
    namespace Test_Numar_Maxim_Cifre
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.WriteLine(“Maxim cifre – Fiind date două numere naturale n şi m, să se formeze un nou număr care să conţină cifrele maxime de pe fiecare poziţie din n şi m. Ex: n=2618, m=3456 → 3658”);
    Console.WriteLine(“Rezolvare:”);
    int n1,n2, m1, m2,max,i=1, numar=0;
    Console.WriteLine(“Introduceti primul numar”);
    n1 = int.Parse(Console.ReadLine());
    Console.WriteLine(“Introduceti al doilea numar”);
    n2 = int.Parse(Console.ReadLine());
    m1=n1;
    m2=n2;
    while (m1!=0|m2!=0)
    {
    if(m1%10>m2%10)
    max=m1%10;
    else
    max=m2%10;
    m1=m1/10;
    m2=m2/10;
    numar=numar+max*i;
    i=i*10;
    }
    Console.WriteLine(“Numarul obtinut din maximul cifrelor numerelor {0} si {1} este: {2}”,n1,n2,numar);
    Console.ReadKey();
    }
    }
    }

    November 1, 2018 at 11:23 am

Your email address will not be published. Required fields are marked *

*