Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Problema Subprograme  (Citit de 2937 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Thenewbie
Strain


Karma: 4
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« : Martie 11, 2013, 21:12:31 »

Salut, am ajuns la scoala la subprograme si am incercat sa fac un sub program care ridica numarul "n" la puterea "p", doar ca nu stiu unde gresesc ca-mi iese cu totul altceva. Mentionez ca abia am invatat sa fac subprograme si nu stiu multe despre ele.

Citat
#include<iostream>
using namespace std;
int putere(int p,int n)
{
   int i;
   for(i=0;i<=p;i++)
      n*=n;
   return n;
}
int main()
{
int n,p;
cout<<"n=";
cin>>n;
cout<<"p=";
cin>>p;
cout<<putere(p,n);
return 0;
}

Memorat
romircea2010
Strain
*

Karma: 18
Deconectat Deconectat

Mesaje: 35



Vezi Profilul
« Răspunde #1 : Martie 11, 2013, 23:15:29 »

Salut, am ajuns la scoala la subprograme si am incercat sa fac un sub program care ridica numarul "n" la puterea "p", doar ca nu stiu unde gresesc ca-mi iese cu totul altceva. Mentionez ca abia am invatat sa fac subprograme si nu stiu multe despre ele.

Citat
#include<iostream>
using namespace std;
int putere(int p,int n)
{
   int i;
   for(i=0;i<=p;i++)
      n*=n;
   return n;
}
int main()
{
int n,p;
cout<<"n=";
cin>>n;
cout<<"p=";
cin>>p;
cout<<putere(p,n);
return 0;
}



Nu e bine pentru ca la inmultire tu folosesti acelasi n care se modifica deja la pasul anterior, de exemplu: pentru n = 2 la urmatorul pas obtii n = 4, apoi n = 16, apoi n = 256... si ai grija la forul din subprogram pentru ca el face p+1 pasi si practic tie ti-ar trebui p pasi. Corect ar veni cam asa:
Cod:
int putere(int p,int n)
{
   int i, val = 1;
   for(i=1;i<=p;i++)
      val*=n;
   return val;
}
Bafta Ok
Memorat
Thenewbie
Strain


Karma: 4
Deconectat Deconectat

Mesaje: 7



Vezi Profilul
« Răspunde #2 : Martie 13, 2013, 22:08:02 »

Multumesc Smile
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines