Atestat Informatica – Pascal/C/C++ – P. 11

Problema numarul 11 propusa pentru atestatul la informatica.

Subiect
Pe prima linie a fisierului Matrice.in este scris un numar natural n iar pe fiecare din urmatoarele n linii ale fisierului, sunt scrise cate n numere naturale, formate fiecare din cel mult doua cifre, separate prin cate un spatiu, reprezentand valorile elementelor unei matrici patratice A cu n linii.

Se considera subprogramele:

  • – s1 cu doi parametrii n si a, care determina, in urma apelului, citirea numerelor din fisierul Matrice.in si returnarea, prin intermediul parametrului n, a numarului de linii ale matricei din fisier, iar prin intermediul parametrului a, returnarea unui tablou bidimensional patratic cu n linii care memoreaza valorile elementelor matricei A din fisierul de intrare
  • – s2 cu doi parametrii v ( un tablou unidimensional cu cel mult 30 de elemente ) si k ( un numar natural reprezentand numarul efectiv de elemente ale tabloului v )


Cerinta

  • – scrieti definitia completa a subprogramelor s1 si s2
  • – scrieti un program Pascal/C/C++ care citeste de la tastatura un numar natural m si care, folosind apeluri utile ale subprogramelor s1 si s2, verifica daca matricea A, scrisa in fisierul Matrice.in, poate fi matricea de adiacenta a unui graf orientat cu n varfuri si m arce, caz in care, programul va afisa pe ecran, pe o singura linie, separate prin cate un spatiu, gradele exterioare ale tuturor varfurilor grafului, in ordinea crescatoare a etichetelor lor. Daca matricea A nu poate fi matricea de adiacenta a unui graf orientat cu n varfuri si m arce, atunci programul va afisa pe ecran mesajul IMPOSIBIL

Rezolvare in Pascal

Rezolvare in C/C++

48 de gânduri despre “Atestat Informatica – Pascal/C/C++ – P. 11”

  1. va rog din suflet..ma puteti ajuta cu rezolvarea unor subiecte date la atestat anul acesta folosind limbajul de programare pascal?
    Subiectul nr 16
    Se citeste de la tastatura un nr natural n, mai mic sau egal cu 1000. sa se formeze un tablou unidimensional cu divizorii nr n.
    Subiectul nr 14
    Se citeste un sir de nr intregi pana la inalnirea nr 0. sa se calculeze media aritmetica nu nr din sir.
    Subiectul nr 18
    Se citeste de la tastatura un nr natural n, mai mic sau egal cu 50, apoi ce;e n numere reale ale tabloului unidimensional V. sa se scrie un program pt a determina maximul si minimul elementelor tabloului.
    Subiectul nr 21
    Se citeste de la tastatura un nr natural n mai mic sau egal cu 20 apoi se citesc cele nxn elemente intregi ale tabloului bidimensional patratic a. sa se verifice daca tabloul a este sau nu simetric.
    va rog mult..media mea depinde de tema asta! va multumesc.

    1. Sa vedem ce putem face :->

      Problema pentru atestat nr. 16

      Problema pentru atestat nr. 14

      Problema pentru atestat nr. 18

      Problema pentru atestat nr. 21

      Enjoy :-) Sfatul meu este sa le incerci in pascal pe toate si in caz ca ceva nu merge cum ar trebui, tell us.

      Sa iei o nota cat mai mare :-D

  2. multumesc mult..am dat teza la info si nu am facut nimic la grafuri.. asa ca trebuie sa rezolv 10 subiecte de la atestat. sper sa l multumesc cu acestea si sa mi ridic nota.

  3. am scris programele in Pascal. mai imi da cate o eroare dar o sa i cer maine explicatii domnului profesor desi sunt sigura ca nu o sa le primesc nu vreau sa bata la ochi. daca va mai rog sa ma mai ajutati cu inca o sa dau dovata de lipsa de bun simt?:D scuzati-mi prostia dar pentru mine informatica e o enigma.
    subectul nr 23
    se citeste de la tastatura un nr natural n. mai mic sau egal cu 20, apoi se citesc cele nxn elemente intregi ale unui tablou bidimensional patratic a. sa se calculeze suma elementelor aflate sub diagonala principala, inclusiv diagonala din tabloul a.
    subiectul nr 26
    se citesc de la tastatura doua nr naturale m si n mai mici sau eglae cu 20 apoi se citesc cele mxn elemente intregi ale unui tablou bidimensional a. sa se calculeze suma elemntelor aflate pe linia k unde 1<=k<=m
    subiectul nr 4
    asemanator cu subiectul 23 doar ca aici mi se cere suma elementelor aflate sub diagonala secundara inclusiv diagonala din tabloul a
    subiectul nr 40
    se citeste de la tastatura un sir de caractere. sa se afisze pe ecran sirul invers.

    Scuzati ma daca va bat la cap sau va rapesc prea mult timp.
    multumesc

    1. Poti sa imi spui ce eroare ai primit si vedem de la ce a aparut (adauga end. la finalul programului, am uitat sa-l mentionez in postul anterior).

      Rezolvare subiect 23 atestat informatica
      Elementele de sub diagonala principala trebuie sa indeplineasca urmatoarea conditie: i mai mic decat j. Cele de pe diagonala principala trebuie sa aiba i egal cu j.

      Rezolvare subiect 26 atestat informatica
      Consideram n numarul de linii si m numarul de coloane.

      Rezolvare subiect 4 atestat informatica
      Pentru elementele de sub diagonala secundara, inclusiv aceasta:

      Rezolvare subiect 40 atestat informatica
      Sa afisam sirul de caractere invers :-)

      Cred ca asta e tot. Daca apar probleme, verifica variabilele sa fie trebute toate, este posibil sa fi omis vreuna.

      Succes!

    1. sum := sum / a.length;
      nu am inteles aici. subiectul nr 14..

      Dupa ce am calculat suma intregului sir, conform mediei aritmetice, o impartim la numarul de elemente adunate (in cazul nostru lungimea vectorului a care va fi de tip integer: 1,2,3,4,5,6 sau 23 depinde de numarul de elemente din vector)

  4. Buna tuturor!Ma poate ajta si pe mine cineva cu rezolvarea unor probleme?Chiar nu ma pricep si porfu’ nu ne explica nimic….

  5. Problema 1 : Se numeste numar Armstrong de ordin “n” pentru care suma cifrelor la puterea n este egala cu numarul.
    Ex: 153 -ordin 3
    1634- ordin 4
    n>1 si n<10

    Problema 2 : Sa se gaseasca numerele prietene intelegand prin numere prietene acele perechi de numere la care suma divizorilor unui numar este egala cu celelalte numere si invers.

    Problema 3: Se da un numar n<32767,sa generam toate tripletele de numere Pitagoreice.

    Problemele trebuiesc rezolvate in Pascal si ca sfat,profesorul ne-a spus sa folosim proceduri.Multumiri anticipate:)

    1. Cum verificam daca un numar este sau nu de tip Armstrong

      Celelalte 2 vor veni in zilele urmatoare. Sfatul meu este sa incerci sa le rezolvi singura, daca ti le rezolv eu sau oricine altcineva nu vei rezolva nimic. Il vei impresiona pe prof dar daca te va scoate la tabla nu vei sti sa le faci…

  6. 1 sa da un numar natural nenul n <=1000. sa se afiseze cel mai mare divizor propriu al lui n.
    2 se da un nr natural de tip word. sa se determine de cate ori apare o cifra data in scrierea lui n.
    3 se da un nr natural nenul. sa se tedtermine care estea cea mai mare cifra care apare in scrierea lui n.
    4 se citeste un numar natural n de la tastatura. cate cifre contine?
    5 sa se scrie un algoritm care multiplica un sir s de lungime maxima 10, de n ori(n este cuprins intre 1 si 20 )
    credeti ca m ati putea ajuta?multumesc anticipat!

    1. REZOLVARE: sa da un numar natural nenul n <=1000. sa se afiseze cel mai mare divizor propriu al lui n.

      REZOLVARE se da un nr natural de tip word. sa se determine de cate ori apare o cifra data in scrierea lui n.

      REZOLVARE se da un nr natural nenul. sa se determine care estea cea mai mare cifra care apare in scrierea lui n.

      REZOLVARE se citeste un numar natural n de la tastatura. cate cifre contine?

      REZOLVARE sa se scrie un algoritm care multiplica un sir s de lungime maxima 10, de n ori(n este cuprins intre 1 si 20 )

      La ultimul sper ca am inteles bine problema… daca nu e ceea ce aveai nevoie, let me know :-)

      Succes!

  7. buna seara. scuzati ma pentru intarziere. multumesc pentru rezolvari. le am facut in pascal si primele 4 au fost bune. la ultimul insa nu a mers:( e sir de caractere. poate contine cifre si litere deci nu poate fi inmultit… oricum multumesc mult pentru cele rezolvate! o seara placuta sa aveti

  8. type Zi =(L, Ma, Mi, J, V, S, D)
    Venit=array [Zi] of real ;
    var v: Venit ;
    a) calculeaza venitul saptaminii (suna elementelor v. )
    b)calculeaza media s:7
    c)indica ziua in care s-a obtinut fiecare venit
    d)indica ziua cu venitul cel mai mare

    1. Banuiesc ca ai nevoie de rezolvare in Pascal.

      Sa vedem…

  9. Pai am 14 probl la info de facut .. pseudocod+cod si am reusit doar 11 .. daca ati putea sa ma ajutati la aceste 3 :D
    1.Cate cifre pare sunt intr’un nr dat?
    2.Sa se verifice daca la scrierea unui nr,introdus de la tastatura,cifrele pare si impare alterneaza
    3.In cate zerouri se termina un numar de maxim 9 cifre introdus de la tastatura?

    Ms anticipat :D

  10. vreau si eu rezolvarea a doua probleme simplute….va rog…chiar nu imi dau seama kre e modalitatea coracta de a le rezolva
    fiind dat un numar n, sa se afiseze toti divizorii sai si media aritmetica a divizorilor sai cuprinsi intre doua valori citite de la tastatura sau un mesaj daca nu are divizori intre aceste valori.

    2) fiind dat un nr natural n sa se stabileasca daca acesta este un termen al sirului lui fibonacci.

    in c++

    multumesc anticipat

  11. vreau si eu rezolvarea a doua probleme simplute….va rog…chiar nu imi dau seama kre e modalitatea coracta de a le rezolva

    1)fiind dat un numar n, sa se afiseze toti divizorii sai si media aritmetica a divizorilor sai cuprinsi intre doua valori citite de la tastatura sau un mesaj daca nu are divizori intre aceste valori.

    2) fiind dat un nr natural n sa se stabileasca daca acesta este un termen al sirului lui fibonacci.

    in c++

    multumesc anticipat !

  12. Salut. Ajutatima va rog.Se considera un tablou bidimensional, din n linii si m coloane, unde n si m sunt egale. Elaborati un program care va afisha pe ecran suma celor doua diagonale. Ajutatima va rod ca miine primesc o nota rea (((

    1. Ok, sa vedem…

      var x: array [1 .. 10, 1 .. 10] of integer;
      i, j, sum1, sum2: Integer;
      begin
      sum1 := 0;
      sum2 := 0;
      for i := 1 to n do
      for j := 1 to m do begin
      readln(x[i, j]);
      if (i = j) then
      sum1 := sum1 + x[i, j];
      if (i = 8 – j + 1) then
      sum2 := sum2 + x[i, j];
      end;
      writeln(“Suma diagonala principala = “, sum1);
      writeln(“Suma diagonala secundara = “, sum2);
      writeln(“Suma diagonale = “, sum1 + sum2);
      readln
      end.

  13. problema 8: scrieti cate un program care sa realizeze inversarea unui vector:
    a) in aceelasi vector si fara a utiliza un vector suplimentar;
    b) intr-un alt vector.
    EX.Daca vectorul initial este (1,2,3,4) cel final va fi ( 4,3,2,1).

    Problema9: fiind dat un vector v cu n elemente numere intregi,sa se construiasca alti doi vectori:primul va contine numai elemente pare, iar al doilea numai elemente impare ale vectorului initial.
    Ex: Daca vectorul initial este v=(1,64,2,5,23,9,6,11) se vor obtine vectorii ( 64,2,6) si respectiv (1,5,23,9,11).

    problema 10 sa se calculeze componentele sirului Y=(y1,y2,…yn) stiind ca y1,i=1,2,…n este media aritmetica a componentelor pozitive de rang mai mic sau egal cu i ale vectorului x, in cazul in care exista componente pozitive,respectiv -1 in caz contrar.
    EX: pentru x=(-2,-3,71,43,-3,1,-4,,8,12) se obtine y=(-1,-1,71,57,57,38.33,38.33,30.75,27).

    1. Vom rezolva doar o problema / comentariu, asa ca alege una dintre ele si dupa ce vei primi solutia le poti adauga si pe celelalte. Suntem si noi oameni totusi :D

  14. rezolvari c++ se pot cere? :D am observat ca majoritatea vor in pascal..

    ei bine, am sa scriu si eu o problema si daca poate cineva sa ma ajute, ii multumesc frumos :)
    se citeste de la tastatura un numar natural n,mai mic sau egal cu 50,apoi cele n numere reale ale tabloului unidimensional v.sa se scrie un program pt a determina media aritmetica a elementelor tabloului.

    ex.: pentru n=5 si v=(1, 2.5, 2, 5, 3) se va afisa 2.7

  15. am nevoie de ajutor pentru problema:
    Se dau 3 numere naturale,nenule a,b,c.Sa se determine cel mai mare divizor comun al lor.Daca acesta este 1, sa se afiseze si mesajul Numerele Sunt Prime Intre Ele.
    Ex: pentru a=15,b=20,c=25 se va afisa 5, iar pentru valorile 15,20,22 se va afisa 1 urmat de mesajul “numerele sunt prime intre ele”.
    multumesc anticipat!

    1. Sa vedem… niciodata nu mi-au placut problemele cu divizori comuni :)

      begin
      writeln(‘a=’);
      readln(a);
      writeln(‘b=’);
      readln(b);
      writeln(‘c=’);
      readln(c);

      if (a > b) and (a > c) then lungime := a;
      if (b > a) and (b > c) then lungime := b;
      if (c > a) and (c > b) then lungime := c;

      for i := 1 to lungime do
      if (a mod i = 0) and (b mod i = 0) and (c mod i = 0) then
      divizor := i;
      if divizor = 1 then
      writeln(divizor, ‘ Numerele sunt prime intre ele’)
      else
      writeln(divizor);
      readln
      end.

      Cred ca e ok, nu am testat in Pascal, daca apar probleme te rog sa-mi spui si mai verific codul.

  16. Am nevoie pt maine la test de o rezolvare la o problema de matrice care mi se va da iar eu va voi posta cerinta ce ziceti va rog se poate?:)

  17. Salut ,felicitari pentru rezolvarile problemelor postate aici ,mi-au fost de un real ajutor
    as avea insa nevoie de niste idei urgent pentru o problema daca se poate.Problema este:
    DUBLARE
    Scrieti un program care citeste de la tastatura un sir s de cel mult 30 de caractere si un caracter c;programul determina dublarea fiecarei aparitii a caracterului c in s si scrie noul sir obtinut in fisierul ”bac.txt”
    exemplu:citim sirul ‘alfabetar’ si caracterul a,atunci fisierul va contine sirul:aalfaabetaar.

    1. Pentru a primi rezolvarea va trebui sa acumulezi 150 de puncte de activitate. Dupa aceea vei putea schimba aceste puncte pentru rezolvarea problemei.

  18. va rog frumos sa ma ajutati…acum am atestu si am o problema cam grea in pascal
    In fisierul Numere.In se afla n-1 numere intregi distinctw, din intervalul [1,n](unde n este un numar natural 1<=n<=100).SE cere sa se afiseze pe ecran numarul care lipseste.
    Ex:pt fisierul numere.in cu continutul
    3 5 1 2
    se va afisa 4
    va rog frumos am 20 min la dispozitie mai putin chiar si nus.

  19. Va rog sa ma ajutati cu aceasta probleme.Imi trebuie rezolvata in limbajul C++.
    Se citeste de la tastatura o matrice cu n linii si m coloane.Sa se afiseze matricea si suma elementelor pozitive din matrice.Calculul sumei se va face cu ajutorul unui subprogram ce primeste ca parametru matricea si returneaza suma.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *

Poți folosi aceste etichete și atribute HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">