Jump to content
theparasite

Intrebare... SIMULARE BAC 2015

Recommended Posts

Salutari. Am o intrebare referitoare la un subiect dat la SIMULAREA BAC INFORMATICA 2015


Subprogramul F este definit al?turat. Scrie?i
ce valori au F(105,105) respectiv
F(105,42).
(6p.)
int F(int x, int y)
{ if(x==y) return 1;
else
{ if(x<y)
{ x=x+y;
y=x-y;
x=x-y;
}
return 1+F(x-y,y);
}
}

Rezultatul meu a fost pentru F(105,105) : 1 si pentru F(105,42) : 4.

In barem gasesc ca F(105,105): 0

De ce?

Poftim codul transpuns in C++(CODEBLOCKS)


#include <iostream>
using namespace std;

int F(int x, int y)
{
if(x==y) return 1;
else {if(x<y) { x=x+y; y=x-y; x=x-y;} return 1+F(x-y,y);}

}
int main()
{ int x,y;
cout<<"dati x"; cin>>x;
cout<<"dati y"; cin>>y;
cout<<F(x,y);
}

Rulat, imi da rezultatul 1 pentru F(105,105) si 4 pentru F(105,42)...

Problema este ca in barem gasesc:

"Se acord? numai 3p. dac? doar o valoare

este conform cerin?ei.

F(105,105)=0;

F(105,42)=4."

Link to comment
Share on other sites

+++

Rezolvare?

Subprogramul Cifre are un singur parametru, n, prin care prime?te un num?r natural

(nÎ[0,10^9]). Subprogramul afi?eaz? pe ecran toate cifrele distincte care apar în scrierea

lui n, separate prin câte un spa?iu.

Scrie?i defini?ia complet? a subprogramului.

Exemplu: dac? n=24207, se afi?eaz? cifrele 0 2 4 7, nu neap?rat în aceast? ordine.

Am incercat eu minunile..dar n-am stiut sa le afisez doar odata...

 void cifre(unsigned long n)
{ unsigned long x,v[10];
unsigned i=0;
x=n;
while(x!=0) { v[i]=x%10;
x=x/10;
i++;
}

N-am stiut sa le afisez doar odata...

Edited by theparasite
Link to comment
Share on other sites

la s2 ex 4 am facut ceva de genu:

i:=1;

while i<=length(s) do

begin

if s(i)='a' and s(i+1)='e' ) then begin s:=delete(s,s,2); i=1; end; else i:=i+1;

end;

e bine ? ce credeti ?

este bine, asa am facut si eu, ai citit daca a si e sunt consecutive si daca sunt i=i+2 adica sare peste ele la afisare. La exercitiul din topic este 1 si 4 , m-am grabit si in loc de 4 am pus 5 am crezut ca uitasem sa adaug acel "return 1" din cazul if.. dar ideea e ca este bine 1 si au gresit ei baremul

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...