Documente Academic
Documente Profesional
Documente Cultură
Biletul nr. 1
1. Din fiierul atestat.in se citete un numr natural n (n<=25). S se calculeze i s se afieze pe
ecran valoarea sumei : S=1+2+22+23+2n.
#include<stdio.h>
#include<math.h>
int n,i,S;
FILE *IN;
int main()
{
S=1;
IN=fopen("atestat.in","rt");
fscanf(IN,"%d",&n);
for(i=1;i<=n;i++)
S=S+pow(2,i);
printf("%d",S);
fclose(IN);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 2
1. Din fiierul atestat.in se citete un numr natural n, format din maxim 3 cifre. Afiai pe ecran al n-
lea termen al irului lui Fibonacci. Folosii o funcie nerecursiv, cu un parametru, care ntoarce cel de-
al n-lea termen al irului lui Fibonacci.
#include<stdio.h>
int n,c,p,a,l;
FILE *IN;
int main()
{
c=1;
p=1;
IN=fopen("atestat.in","rt");
fscanf(IN,"%d",&n);
if(n>2)
{
l=2;
while(l<n)
{
a=p;
p=c;
c=a+p;
l++;
}
}
printf("%d", c);
fclose(IN);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1. Se citesc din fiierul atestat.in dou numere naturale a i b (0<a<b<10000). Scriei n fiierul
atestat.out toate numerele ptrate perfecte din intervalul [a,b].
#include<stdio.h>
#include<math.h>
int a,b,c,p,i;
FILE *IN;
FILE *OUT;
int main()
{
IN=fopen("atestat.in","rt");
fscanf(IN,"%d",&a);
fscanf(IN,"%d",&b);
float c;
c=sqrt(b);
for(i=a;i<=c;i++)
p=i*i;
OUT=fopen("atestat.out","w");
fprintf(OUT,"%d",&p);
fclose(IN);
fclose(OUT);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 4
1. Se citesc din fiierul atestat.in dou numere naturale a i b (0<a<b<1000000). Afiai pe ecran,
pe cte o linie, fiecare numr din interval, urmat de spaiu i de suma cifrelor sale. Pentru aflarea
sumei cifrelor unui numr se va folosi o funcie care are ca parametru un numr natural i
returneaz suma cifrelor lui.
#include<stdio.h>
int a,b,x,i,S;
int suma(int x);
FILE *IN;
int main()
{
IN=fopen("atestat.in","rt");
fscanf(IN,"%d %d\n",&a,&b);
for(i=a;i<=b;i++)
printf("%d %d",i,suma(i));
}
int suma(int x)
{
int S=0;
while (x>0)
{
S=S+x%10;
x=x/10;
}
return S;
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1. Creai fiierul atestat.out care s conin pe prima linie, separate printr-un spaiu, toate numerele
de trei cifre care sunt numere prime.
#include<stdio.h>
int i,j,prim;
FILE *OUT;
int main()
{
for(i=1;i<=20;i++)
{
int prim=1;
for(j=1;j<=i/2;j++)
if(i%j==0)
prim=0;
if (prim==1);
OUT=fopen("atestat.out","w");
fprintf(OUT,"%d",i);
fclose(OUT);
}
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
#include<stdio.h>
int n,l,c;
FILE *OUT;
int main()
{
scanf("%d", &n);
for(l=n;l>=1;l--)
{
for(c=l;c>=1;c--)
OUT=fopen("triunghi.out","w");
fprintf(OUT,"%d",c);
fprintf(OUT,"\n");
}
fclose(OUT);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
#include<stdio.h>
int x,i,min,n,s;
int char s[20];
FILE *IN;
int main()
{
IN=fopen("atestat.in","rt");
fscanf(IN,"%d", &n);
min=0;
for(i=1;i<=n-1;i++)
fscanf(IN,"%d",s[i]);
for(i=1;i<=n-1;i++)
{
scanf("%d", &x);
if(x<min)
min=x;
}
printf("%d", min);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
#include<stdio.h>
int n,v[20],max,i;
int main()
{
scanf("%d", &n);
v[0]=1;
max=v[0];
for(i=1;i<=n-1;i++)
{
scanf("%d", &v[i]);
if(v[i]>max)
max=v[i];
}
scanf("%d", &max);
for(i=1;i<=n;i++)
if(v[i]==max)
printf("%d", i);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1. Se citete din fiierul vector.in un numr natural n, un vector de n numere ntregi i un numr
natural k nenul(n<=20). Creai un nou vector care s conin toate elementele din vectorul dat care
se divid cu k, i apoi afiai-l pe ecran.
#include<stdio.h>
int
FILE *IN;
int main()
{
scanf("%d", &n);
scanf("%d", &v);
scanf("%d", &k);
p=0;
for(i=1;i<=n;i++)
{
if(v[i]%k==0)
v[++p]=v[i];
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 10
#include<stdio.h>
#include<stdlib.h>
int v[100],ok,i,n;
int sub(int n);
{ scanf("%d", & n);
ok=1;
for(i=1;i<=n;i++)
scanf("%d",& v[i]);
{
for(i=1;i<=n;i++)
if((v[i]<=0) ||(v[i]%2==1))
ok=0;
printf("%d, ok);
}
if(ok==1)
printf("NUMERELE SUNT POZITIVE SI PARE");
else
printf("NUMERELE SUNT NEGATIVE SAU IMPARE");
}
int main()
{
scanf("%d", & n);
int sub(n);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 11
1. Se citete din fiierul vector.in un numr natural n i vector de n(n<=20) numere naturale formate
din maxim 9 cifre fiecare. Creai un nou vector care s conin inversul fiecrui element din vectorul
dat. Afiai noul vector pe ecran. Pentru aflarea inversului unui numr se va folosi o funcie.
Obs: inversul lui 12345 este 54321.
#include<stdio.h>
#include<math.h>
int v[100],i,n,w[100],r;
FILE *IN;
int main()
{
IN=fopen("vector.in","rt");
fscanf(IN,"%d", &n);
for (i=1;i<=n;i++)
fscanf(IN,"%d",& v[i]);
{
while(n>0)
{
w[n]=0;
r=v[n]%10;
w[n]=w[n]*10+r;
v[n]=v[n]/10;
}
printf("%d",w);
}
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete din fiierul vector.in un numr natural n i vector de n numere naturale(n<=20). Afiai
cte numere perfecte sunt n vector. Un numr este perfect dac este egal cu suma divizorilor si mai
mici dect el. (ex: 6=1+2+3) se va folosi o funcie care verifica aceasta proprietate.
#include<stdio.h>
int n,i,v[100],d,s;
FILE *IN;
int main()
{
IN=fopen("vector.in","rt");
fscanf(IN,"%d", &n);
s=0;
fscanf(IN,"%d", &n);
fscanf(IN,"%d", & v[i]);
for(i=1;i<=n;i++)
for(d=1;d<=i/2;d++)
{
if(i%2==0)
{
s=s+i;
printf("%d", s);
}
}
if(v[i]==s)
{
printf("NR E PERFECT");
else
printf("NR NU E PERFECT");
}
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete din fiierul vector.in un numr natural n(n<=20) i un vector de n numere naturale
(folosind un subprogram). S se scrie un program care calculeaz i afieaz pe ecran maximul dintre
elementele impare ale vectorului sau afieaz pe ecran un mesaj n cazul n care nu exist numere
impare n vector.
#include<stdio.h>
int
FILE *IN;
int sub(int n)
{
max=0;
fscanf(IN,"%d", &n);
for(i=1;i<=n;i++)
fscanf(IN."%d",&v[i]);
while (n>0)
{
for(i=1;i<=n;i++)
algoritmul pt max
}
int main()
{
IN=fopen("vector.in","rt");
fscanf(IN,"%d", &n);
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete de la tastatur un vector cu n elemente numere reale. Afiai vectorul obinut dup
ordonarea cresctoare a elementelor sale. Ordonarea se va face ntr-un subprogram ce primete ca
parametru elementele irului i le returneaz ordonate. Afiarea vectorului ordonat se va face n fiierul
vector.out.
#include<stdio.h>
int ok,i,n,aux;
FILE *OUT
int sub(int v[10]);
{
OUT=fopen("vector.out","w");
do
{
ok=1;
for(i=1;i<=n;i++)
if v[i]>v[i+1]
{
ok=0;
aux=v[i];
v[i]=v[i+1];
v[i+1]=aux;
}
}while(ok==0)
fprintf(OUT,"%d", v[i]);
}
int main()
{
scanf("%d", &n);
for(i=1;i<=n;i++)
scanf("%d", & v[i]
int sub(v[i]);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citesc din fiierul mat.in dou numere naturale nenule, care reprezint numrul n de linii i
numrul m de coloane ale unei matrici (1<n,m<=20), i elementele matricei (numere reale). S se
afieze matricea i media aritmetic a elementelor pozitive din matrice. Calculul mediei aritmetice se
va face cu ajutorul unui subprogram ce primete ca parametru matricea i returneaz media aritmetic.
#include<stdio.h>
int i,j,n,m, s,nr;
float ma, a[10][10];
FILE *IN
int sub(int ma)
{
IN=fopen("mat.in", "rt");
int nr,s=0;
for(i=1;i<=n;1++)
for(j=1;j<=j;j++)
{
fscanf(IN,"%lf", &a[i][j]);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
s=s+a[i][j];
nr=m*n;
printf("MEDIA ARITMETICA ESTE: ")
printf(float s/nr);
}
}
int main()
{
IN=fopen("mat.in","rt");
fscanf(IN,"%d", &n);
fscanf(IN,"%d", &m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
fscanf(IN,"%lf", &a[n][m]);
scanf("%d", &n);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%d", & a[i][j])
int sub(int ma);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citesc din fiierul mat.in un numr natural nenul n(1<n<=20), care reprezint numrul de linii
ale unei matrici ptratice i elementele matricei (numere ntregi). S se afieze pe ecran matricea,
elementul minim din matrice i poziiile din matrice pe care se afl minimul. Calculul valorii minime
se va face cu ajutorul unui subprogram ce primete ca parametru matricea i returneaz minimul
elementelor ei.
#include<stdio.h>
int n,i,j,min;
float a[10][10];
FILE *IN;
int main()
{
IN=fopen("mat.in","rt");
min=10;
fscanf(IN,"%d", &n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%lf", &a[i][j]);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
printf("%d", a[i][j]);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
min=a[i][j];
if(a[i][j]<min)
min=a[i][j];
if(a[i][j]==min)
printf("%d %d \n", i,j);
}
}
printf("%d", min);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete de la tastatura un numr natural n i o matrice ptratic cu n linii (n<=10). S se afieze
matricea pe ecran, precum i elementul maxim de pe fiecare coloan din matrice.
#include<stdio.h>
int n, i,j,max;
float a[10][10];
int main()
{
scanf("%d", &n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%d", &a[i][j]);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
printf("%d", a[i][j]);
for(j=1;j<n;j++)
{
max=a[i][j];
for(i=1;i<=n;i++)
if(a[i][j]>max)
max=a[i][j];
}
printf("%d", max);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citesc din fiierul mat.in dou numere naturale nenule, care reprezint numrul n de linii i
numrul m de coloane ale unei matrici, i elementele matricei(numere reale). S se construiasc o
matrice B cu 2 coloane i maxim nxm linii, care s conin indicii elementelor matricei care conin
zecimale. Afiai cele dou matrici pe ecran.
#include<stdio.h>
int n,m,i,j,k;
float a[10][10], b[10][10];
FILE *IN;
int main()
{
IN=fopen("mat.in","rt");
fscanf(IN,"%d %d",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%lf", &a[i][j]);
k=0;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(a[i][j]-(int)a[i][j]!=0)
{
//b[++k][0]=i; habar n-am de ce //
//b[k][i]=j;
}
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
printf("%d", b[i][j]);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citesc din fiierul mat.in un numr natural nenul n(n<=10), care reprezint numrul de linii ale
unei matrici ptratice i elementele matricei (numere ntregi). Afiai matricea pe ecran. S se
nlocuiasc elementele situate pe diagonala principal i pe diagonala secundar cu valoarea 0 (zero).
Afiai noua matrice pe ecran. Pentru afiarea unei matrici, se va folosi un subprogram cu parametrii.
#include<stdio.h>
int n,i,j;
float a[10][10];
FILE *IN;
int main()
{
IN=fopen("mat.in", "rt");
fscanf(IN,"%d", &n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
fscanf(IN,"%d", &a[i][j]);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ", a[i][j]);
printf("\n");
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;i++)
if((i==j) || (i==n-j))
a[i][j]=0;
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ", a[i][j]);
printf("\n");
}
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citesc din fiierul mat.in un numr natural nenul n(1<n<=20), care reprezint numrul de linii
ale unei matrici ptratice i elementele matricei (numere ntregi). Afiai pe ecran matricea i numrul
elementelor pare de sub diagonala principal.
#include<stdio.h>
int n,i,j, contor, a[10][10];
FILE *IN;
int main()
{
IN=fopen("mat.in", "rt");
int contor=0;
fscanf(IN,"%d", &n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
fscanf(IN,"%d", &a[i][j]);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ", a[i][j]);
printf("\n");
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
if((i>j) && (a[i][j]%2==0));
contor++;
}
printf("%d", contor);
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 21
1.Se citesc din fiierul mat.in dou numere naturale nenule, care reprezint numrul n de linii i
numrul m de coloane ale unei matrici(1<n,m<=20), i elementele matricii(numere ntregi). S se
afieze pe ecran suma elementelor pare de pe fiecare coloan.
#include<stdio.h>
#include <fstream>
int n,m,i,j,s,a[10][10];
FILE *in;
int main ()
{
in=fopen("mat.in","rt");
fscanf(in, "%d %d",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
fscanf(in, "%d",&a[i][j]);
s=0;
for(i=1;i<=m;i++)
{
for(j=1;j<=n;j++)
{
if(a[j][i]%2==0)
s=s+a[j][i];
}
printf("%d ", s);
s=0;
}
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 22
1.S se construiasc un tablou ptratic de dimensiune n2 (1<= n<=50) cu primele n2 numere impare
ncepnd cu 1, i s se scrie acesta n fiierul matrice.out.
Exemplu: Pentru n=4 se va scrie:
1 3 5 7
9 11 13 15
17 19 21 23
25 27 29 31
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 23
1.Se citesc din fiierul mat.in dou numere naturale nenule, care reprezint numrul n de linii i
numrul m de coloane ale unei matrici, i elementele matricii ( 1<=n, m< =50) avnd componente
numere ntregi. S se afieze pe ecran cel mai mare numr de pe marginea tabloului.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 24
1.Se citesc din fiierul mat.in un numr natural nenul n, care reprezint numrul de linii ale unei
matrici ptratice i elementele matricei(numere ntregi). S se verifice dac matricea este simetric
(adic aij=aji , pentru oricare i,j , 1<=i,j<=n), i s se afieze pe ecran un mesaj corespunztor.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 25
1.Se citete de la tastatur un ir de caractere s ce reprezint un cuvnt din dicionarul limbii romne,
format doar din litere mici. S se numere vocalele din ir i apoi s se tearg din ir toate literele m.
Numrul vocalelor i irul obinut se vor afia pe ecran.
Biletul nr. 26
1.Se citete din fiierul sir.in un ir de caractere s ce reprezint un cuvnt din dicionarul limbii
romne. Afiai pe ecran, separate prin spaiu, toate prefixele irului s.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 27
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete din fiierul sir.in un ir de caractere s ce reprezint un cuvnt din dicionarul limbii
romne. Afiai pe ecran irul obinut prin transformarea literelor mari n mici i a celor mici n mari.
Biletul nr. 28
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
1.Se citete de la tastatur un cuvnt (maxim 25 caractere). Verificai dac cuvntul are proprietatea de
palindrom (dac cuvntul citit invers este identic cu cel dat).
Biletul nr. 29
#include <stdio.h>
#include<string.h>
int n;
type def struct melodi
{
char titlu[31];
char compozitor[31];
char interpret[31];
int durata[2];
};
melodi colectie [30];
colectie[7].titlu.durata
{
scanf("%d", &n);
for(i=1;i<n;i++)
{
scanf("%s", colectie[i].titlu);
scanf("%s", colectie[i].compozitor);
scanf("%s", colectie[i].interpret);
scanf("%d", colectie[i].durata);
}
scanf("%s", compozitor);
for(i=1;i<=n;i++)
{
if(strcmp(colectie[i].compozitor, compozitor)==0)
printf("%s", colectie[i].titlu);
printf("%s", colectie[i].compozitor);
printf("%s", colectie[i].interpret);
printf("%d", colectie[i].titlu);
}
}
#include<stdio.h>
#include<string.h>
int n,i;
type def struct produs
{
char denumire[21];
char producator[21];
float cantitate[3];
float pret_unitar[3];
};
int produs int depozit[31];
int main()
{
scanf("%d", &n);
for(i=1;i<=n;i++)
{
scanf("%s", depozit[i].denumire);
scanf("%s", depozit[i].producator);
scanf("%d", & depozit[i].cantitate);
scanf("%d", & depozit[i].pret_unitar);
}
scanf("%s", produsul);
for de la 1 la n
cu strcmp compari nuj ce
}
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 31
1.Se citete din fiierul atestat.in un numr natural n, format din maxim 9 cifre. S se determine suma
cifrelor numrului n folosind un subprogram recursiv. Valoarea obinut se va afia pe ecran.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 32
1.Se citete din fiierul atestat.in un numr natural n, format din maxim 4 cifre. S se calculeze suma
primelor n numere naturale folosind un subprogram recursiv. Valoarea obinut se va afia pe ecran.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 33
1.Scriei programul n care folosii o funcie recursiv care ridic un numr A la puterea N (A i N
numere ntregi). A i N se citesc din fiierul atestat.in. Rezultatul va fi afiat pe ecran.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 34
1.Scriei programul n care folosii o funcie recursiv care returneaz valoarea lui N factorial(N!
=123...N). . Rezultatul va fi afiat pe ecran.
Examenul de atestare a competenelor profesionale a absolvenilor de matemetic-informatic i
matematic-informatic, intensiv informatic
Programare
Biletul nr. 35
1.Se citesc din fiierul atestat.in dou numere naturale a i b, formate din maxim 4 cifre. S se
determine cel mai mare divizor comun al numerelor folosind un subprogram recursiv. Rezultatul va fi
afiat pe ecran.