Professional Documents
Culture Documents
2. -
(-2,-2),(-2,2),
(2,2),(2,-2)?
Limbajul C++
a) (robot.x>=-2)&&(robot.x<=2)&&(robot.y>=-2)&&(robot.y<=2)
b) (robot.x<=-2)||(robot.x>=2)||(robot.y<=-2)||(robot.y>=2)
c) (bob.x<=-2)||(bob.x>=2)||(bob.y>=-2)||(bob.y<=2)
d) (bob.x>=-2)&&(bob.x<=2)&&(bob.y>=-2)&&(bob.y<=2)
e) (bob.x>=-2)&&(bob.x<=2)||(bob.x>=-2)&&(bob.x<=2)
f) (robot.x>=-2)&&(robot.x<=2)||(robot.x>=-2)&&(robot.x<=2)
Limbajul C
a) (robot.x>=-2)&&(robot.x<=2)&&(robot.y>=-2)&&(robot.y<=2)
b) (robot.x<=-2)||(robot.x>=2)||(robot.y<=-2)||(robot.y>=2)
c) (bob.x<=-2)||(bob.x>=2)||(bob.y>=-2)||(bob.y<=2)
d) (bob.x>=-2)&&(bob.x<=2)&&(bob.y>=-2)&&(bob.y<=2)
e) (bob.x>=-2)&&(bob.x<=2)||(bob.x>=-2)&&(bob.x<=2)
f) (robot.x>=-2)&&(robot.x<=2)||(robot.x>=-2)&&(robot.x<=2)
109
Limbajul Pascal
a) (robot.x>=-2) and (robot.x<=2) and (robot.y>=-2) and
(robot.y<=2)
b) (robot.x<=-2) or (robot.x>=2) or (robot.y<=-2) or
(robot.y>=2)
c) (bob.x<=-2) or (bob.x>=2) or (bob.y>=-2) or (bob.y<=2)
d) (bob.x>=-2) and (bob.x<=2) and (bob.y>=-2) and (bob.y<=2)
e) (bob.x>=-2) and (bob.x<=2) or (bob.x>=-2) and (bob.x<=2)
f) (robot.x>=-2) and (robot.x<=2) or (robot.x>=-2) and
(robot.x<=2)
3.
Limbajul C++ Limbajul Pascal
#include <iostream> var i,s:integer;
using namespace std; begin
int main() s:=0;
{ int i,s=0; for i:=1 to 5 do;
for(i=1;i<=5;i++); i:=i+1;
s=s+i; s:=s+i; write(s);
cout<<s; return 0;} end.
Limbajul C
#include <stdio.h>
int main()
{ int i,s=0;
for(i=1;i<=5;i++);
s=s+i;
printf("%d",s); return 0; }
a) b) 15 c) 6 d) 5 e) 0 f) 10
genera eroare de compilare.
4.
Limbajul C++ Limbajul Pascal
#include <iostream> var sir:string;
using namespace std; i:integer;
int main() begin
{ sir:='ANA';
char sir[]="ANA"; for i:=1 to length(sir) do
int i=0; sir[i]:=succ(sir[i]);
while(sir[i]) write(sir);
sir[i++]++; end.
cout<<sir;
return 0;
}
110
Limbajul C
#include <stdio.h>
int main()
{ char sir[]="ANA";
int i=0;
while(sir[i])
sir[i++]++;
printf("%s",sir);
return 0;
}
a) ANA b) A c) AN d) BOB e) BAB f) COC
5.
Limbajul C++ Limbajul Pascal
#include <iostream> type coordonate=record
using namespace std; abscisa,ordonata:integer;
struct coordonate{ end;
int abscisa,ordonata;
}; var abscisa:coordonate;
int main()
{ coordonate abscisa; begin
abscisa.abscisa=100; abscisa.abscisa:=100;
abscisa.ordonata=200; abscisa.ordonata:=200;
cout<<abscisa.abscisa<<" "; write(abscisa.abscisa,' ');
cout<<abscisa.ordonata; write(abscisa.ordonata);
return 0;} end.
Limbajul C
#include <stdio.h>
typedef struct {
int abscisa,ordonata;
}coordonate;
int main()
{
coordonate abscisa;
abscisa.abscisa=100;
abscisa.ordonata=200;
printf("%d ",abscisa.abscisa);
printf("%d", abscisa.ordonata);
return 0;
}
a) b) 0 0 c) 100 200 d) 200 100 e) 100 100 f) 200 200
nimic, va genera eroare
de compilare deoarece
numele variabilei de tip
struct nu poate coincide
cu numele câmpului.
111
6.
Limbajul C/C++ Limbajul Pascal
char f() type matrice=array[0..4,0..4] of
{ int i,j,mat[5][5]; char;
char v='a'; function f:char;
for(i=0;i<5;i++) var i,j:integer;
for(j=0;j<5;j++) mat:matrice;
{ mat[i][j]=v; v:char;
v++; } begin
return mat[2][3]; } v:='a';
for i:=0 to 4 do
for j:=0 to 4 do
begin
mat[i,j]:=v;v:=succ(v);
end;
f:=mat[2,3];
end;
a) e b) i c) n d) m e) o f) p
7.
G.
a) 1 b) 2 c) 3 d) 4 e) 5 f) 6
8.
x într-un vector v
Limbajul C/C++ Limbajul Pascal
p=0; p:=0;
u=n-1; u:=n-1;
q=0; q:=0;
while(p<=u && q==0) while (p<=u) and (q=0) do
{ begin
m=(p+u)/2; m:=(p+u) div 2;
if(x==v[m]) q=1; if(x=v[m]) then q:=1
else if(x<v[m]) u=m-1; else if x<v[m] then u:=m-1
else p=m-1; else p:=m-1;
} end;
if(q==1) if q=1 then
printf("Elementul a fost write('Elementul a fost
gasit"); gasit')
else else
112
printf("Elementul nu a write('Elementul nu a
fost gasit"); fost gasit');
9.
Limbajul C++ Limbajul Pascal
#include <iostream> const m=4; n=5;
using namespace std; var i,j:integer;
int main() aux:char;
{ const int m=4,n=5; a:array[0..m-1,0..n-1]
int i,j,aux; of char=
char a[m][n]= (('a','b','c','d','e'),
{{'a','b','c','d','e'}, ('f','g','h','i','j'),
{'f','g','h','i','j'}, ('k','l','m','n','o'),
{'k','l','m','n','o'}, ('p','q','r','s','t'));
{'p','q','r','s','t'}}; begin
for(i=0;i<2;i++) for i:=0 to 1 do
{ aux=a[2][n-1]; begin
for(j=n-1;j>0;j--) aux:=a[2,n-1];
a[2][j]=a[2][j-1]; for j:=n-1 downto 1 do
a[2][0]=aux; } a[2,j]:=a[2,j-1];
for(i=0;i<2;i++) a[2,0]:=aux; end;
{ aux=a[m-1][2]; for i:=0 to 1 do
for(j=m-1;j>0;j--) begin
a[j][2]=a[j-1][2]; aux:=a[m-1,2];
a[0][2]=aux; } for j:=m-1 downto 1 do
for(i=0;i<m;i++){ a[j,2]:=a[j-1,2];
for(j=0;j<n;j++) a[0,2]:=aux; end;
cout<<a[i][j]<<" "; for i:=0 to m-1 do
113
cout<<endl; } begin
return 0; } for j:=0 to n-1 do
write(a[i,j],' ');
writeln; end;
end.
Limbajul C
#include <stdio.h>
int main()
{ const int m=4,n=5;
int i,j,aux;
char a[4][5]={{'a','b','c','d','e'},
{'f','g','h','i','j'},
{'k','l','m','n','o'},
{'p','q','r','s','t'}};
for(i=0;i<2;i++)
{ aux=a[2][n-1];
for(j=n-1;j>0;j--)
a[2][j]=a[2][j-1];
a[2][0]=aux;
}
for(i=0;i<2;i++)
{
aux=a[m-1][2];
for(j=m-1;j>0;j--)
a[j][2]=a[j-1][2];
a[0][2]=aux;
}
for(i=0;i<m;i++){
for(j=0;j<n;j++)
printf("%c %c",a[i][j],' ');
printf("\n");
}
return 0;
}
a) b) c) d) e) f)
abcde abmde deabc abkde edcba abcde
fghij fgrij ijfgh fgrij fghij fghij
noklm klcno lmnok noclm klmno klmno
pqrst pqhst stpqr pqhst pqrst tsrqp
10.
Limbajul C++ Limbajul Pascal
#include <iostream> var a,b,c:integer;
using namespace std; procedure f(a:integer;var
int a=5, b=10, c=15; b:integer; var
void f(int a,int &b,int &c) c:integer);
{ a=a+5; b=b+10; c=c+15; begin
114
} a:=a+5;b:=b+10;c:=c+15;
int main() end;
{ f(a,b,c);f(a,a,b); begin
cout<<"a="<<a; a:=5; b:=10; c:=15;
cout<<"b="<<b; f(a,b,c);f(a,a,b);
cout<<"c="<<c; write('a=',a);
return 0; write('b=',b);
} write('c=',c);
end.
Limbajul C
#include <stdio.h>
int a=5, b=10, c=15;
void f(int a, int *b, int *c)
{ a=a+5; *b=*b+10; *c=*c+15; }
int main()
{ f(a,&b,&c); f(a,&a,&b);
printf("a=%d",a ); printf("b=%d",b); printf("c=%d",c);
return 0; }
a) a=5 b) a=15 c) a=10 d) a=5 e) a=15 f) a=10
b=5 b=35 b=20 b=10 b=5 b=5
c=20 c=30 c=30 c=15 c=30 c=30
11. 1 - Andrei,
2 -
1 2
tre
Andrei Marian Alina Dana Marius
Andrei Marian Alina Marius Dana
Andrei Marian Dana Alina Marius
12. v[3]
returneze 0 în C/C++ sau false în Pascal pentru apelul f(5).
Limbajul C++ Limbajul Pascal
int v[]={15,12,7,20,-1,-5}; var v:array[0..5] of
int f(int n) integer=(15,12,7,20,-1,-5);
{if(n==0) return 0; function
else f(n:integer):boolean;
return begin
v[n-1]<v[n] || f(n-1);} if n=0 then f:=false
115
else
Limbajul C f:=(v[n-1]<v[n]) or f(n-1);
int v[]={15,12,7,20,-1,-5}; end;
int f(int n)
{ if(n==0) return 0;
else
return
v[n-1]<v[n] || f(n-1); }
a) -2 b) -3 c) 16 d) 4 e) 24 f) 30
13. G=({1,2,3,4,5,6},{(1,2),(1,3),(1,4),(2,3)}).
G?
a) 10 b) 12 c) 8 d) 16 e) 2 f) 4
14. write) în
15.
codul ei k (k>=0 k
C k este 6 I. Vom
Z vine A.
o cheie k
Limbajul C++ Limbajul C Limbajul Pascal
char sir[255]; char sir[255]; var sir:string;
unsigned int k,i; unsigned int k,i; i,k:word;
cin>>sir; scanf("%s",sir); begin
cin>>k; scanf("%u",&k); read(sir);
read(k);
Limbajul C++/C
a) for(i=0;i<strlen(sir);i++) sir[i]=sir[i]+k;
b) for(i=0;i<strlen(sir);i++) sir[i]=sir[i+k-'A'];
116
c) for(i=0;i<strlen(sir);i++) sir[i]=sir['Z'-'A'+k];
d) for(i=0;i<strlen(sir);i++)
sir[i]='A'+(sir[i]-'A'+k)%('Z'-'A'+1);
e) for(i=0;i<strlen(sir);i++)
sir[i]='A'+(sir[i]-'A'+'Z'-'A')%('Z'-'A'+1);
f) for(i=0;i<strlen(sir);i++)
sir[i]='A'+(sir[i]-'A'+k)%('Z'-'A'+k);
Limbajul Pascal
a) for i:=1 to length(sir) do
sir[i]:=chr(ord(sir[i])+k);
b) for i:=1 to length(sir) do
sir[i]:=chr(ord(sir[i+k-ord('A')]));
c) for i:=1 to length(sir) do
sir[i]:=chr(ord(sir[ord('Z')-ord('A')+k]));
d) for i:=1 to length(sir) do
sir[i]:=chr(ord('A')+(ord(sir[i])-ord('A')+k) mod
(ord('Z')-ord('A')+1));
e) for i:=1 to length(sir) do
sir[i]:=chr(ord('A')+(ord(sir[i])- ord('A')+
ord('Z')-ord('A')) mod (ord('Z')- ord('A')+1));
f) for i:=1 to length(sir) do
sir[i]:=chr(ord('A')+(ord(sir[i])- ord('A')+k)
mod (ord('Z')-ord('A')+k));
117