1/5
00:00
Indicați care dintre expresiile logice următoare, scrise în pseudocod, are valoarea
TRUE, știind că variabilele întregi x și y au valorile x=11 și y=20.1/5
00:00
Indicați care dintre expresiile logice următoare, scrise în pseudocod, are valoarea TRUE, știind că variabilele întregi x și y au valorile și .
y mod 10 > x div 7(x ≠ y) and (x > y)not FALSE and (x div 10 < y)not TRUE OR (x + y < 10)y mod 10 > x div 7: , iar , deci este fals. (x ≠ y) and (x > y): este fals, deci conjuncția este falsă. not FALSE and (x div 10 < y): not FALSE este TRUE, iar este adevărat, deci expresia este TRUE. not TRUE OR (x + y < 10): not TRUE este FALSE, iar este fals, deci expresia este falsă.Secvența de program de mai jos determină în variabila x numărul tuturor elementelor ce memorează o valoare pozitivă de cel puțin trei cifre dintre cele elemente întregi ale tabloului unidimensional v (v[1] este primul element al tabloului unidimensional).Indicați cu ce pot fi înlocuite punctele de suspensie, în ordinea în care apar.
x=15;
for(int i=1;i<=15;i++)
if(99>=...)
x=... +x;x și -1v[i] și -iv[i] și 1v[i] și -1v[i] cu (inclusiv numerele negative). Așa se ajunge la numărul elementelor = numărul elementelor . Aceasta înseamnă if(99>=v[i]) x=-1+x;. Cu 1 în loc de -1, ar crește; cu x sau cu -i, condiția nu mai privește valoarea elementului.Se consideră secvența de program de mai jos în care h, i, j și k sunt variabile de tip întreg, iar x este un tablou bidimensional pătratic cu linii și coloane ( și x[1][1] este primul element al tabloului bidimensional) și conține elementele:Indicați ce valori se vor afișa după executarea secvenței date.
i=2;
j=n-1;
for(h=1;h<=n/2;h++)
{
for(k=i;k<=j;k++)
cout<<x[h][k]<<' ';
i++;
j--;
}4 3 2 1 0 0 1 2 84 0 9 8 8 9 0 9 82 3 6 4 7 2 5 8 62 4 3 6 5 4 6 5 6h se execută pentru . Pentru : de la la , linia : 4 3 2 1 0. Pentru : de la la , linia : 0 1 2. Pentru : de la la , linia : 8. Se afișează 4 3 2 1 0 0 1 2 8.Se consideră următorul subprogram. Știind că inițial x este , indicați care este valoarea lui x după apelul f(4,x);.
void f(int k,long &n)
{
long m,x=1,y=1;
int z=0;
m=n;
while(m!=0)
{
m=m/10;
z++;
y=y*10;
if(z<=k)x=x*10;
}
y=y/x;
n=n%y*x+n/y;
}1357246456712356712347531246n: pentru sunt , deci , iar x se înmulțește cu doar la primele cifre: . Apoi . Atribuirea n=n%y*x+n/y devine . Practic ultimele cifre sunt mutate în fața celorlalte.Se consideră următoarea secvență de program. Indicați ce se va afișa după executarea secvenței de program de mai jos.
char s[30],x[21];
strncpy(s,"pilotimilitari",strlen("academia"));
s[strlen("militara")]=0;
cout<<strcat(strstr(s,"il")+ strlen("avion")-1,"nent");
s[1]=s[6]+2;
strcpy(x,s+7);
strcpy(strchr(s,'l')+1,x);
s[strlen(s)-5]=0;
cout<<s;iminentkiliminentpolarinentpolarinentkilstrncpy copiază primele caractere (strlen("academia")=8): pilotimi, iar s[8]=0 îl încheie. strstr(s,"il") arată spre ilotimi; adunând ajunge la imi, la care strcat adaugă nent: se afișează iminent, iar s este acum pilotiminent. Apoi s[1]=s[6]+2 face 'm'+2='o': polotiminent; x primește s+7, adică inent; strchr(s,'l')+1 este poziția , unde se copiază inent: polinent. În sfârșit s[strlen(s)-5]=0 taie șirul la caractere: pol. În total se afișează iminentpol.