Ciupercute fermecate

C/C++ este un limbaj multi-paradigmă de nivel mediu, orientat pe obiecte, folosit pe scară largă în industria software datorită echilibrului dintre viteză şi complexitate. Dacă ai nelămuriri în legătură cu acest limbaj sau vrei să ne înveți ceva chiar tu, intră aici.

Ciupercute fermecate

Postby adrianav500 » 13 Jan 2012, 10:11

Un vrăjitor vrea să prepare o licoare specială, la care are nevoie de ciuperci fermecate. O ciupercă este fermecată dacă numărul bulinelor de pe pălăria ei este un număr care are exact doi divizori: 1 şi numărul de buline. Ucenicul vrăjitorului a cules n ciuperci dintre care unele sunt fermecate şi altele nu.

Cerinţă
Scrieţi un program care-l ajută pe ucenic să numere câte ciuperci fermecate sunt şi câte ciuperci care nu sunt fermecate sunt.

Date de intrare
Se citesc de la tastatură valorile :
- n reprezentând numărul de ciuperci culese
- numărul de buline de pe pălăria fiecăreia dintre cele n ciuperci

Date de ieşire
Se va afişa pe ecran pe linii diferite :
- numărul ciupercilor fermecate
- numărul ciupercilor care nu sunt fermecate

Restricţii şi precizări
- n şi numărul bulinelor de pe fiecare ciupercă sunt numere naturale
1 £ n £ 50
- numărul bulinelor de pe fiecare ciupercă este mai mic sau egal cu 32000 şi mai mare sau egal cu 1.

Exemplu

n=8numerele de buline de pe fiecare pălărie : 2 11 9 15 7 3 13 24 Se vor afişa : Ciuperci fermecate :5 Ciuperci care nu sunt fermecate :3
Explicaţie:Ciuperca 1 are 2 buline Ciuperca 2 are 11 buline Ciuperca 5 are 7 buline Ciuperca 6 are 3 buline Ciuperca 7 are 13 buline Toate acestea sunt ciuperci fermecateCiuperca 3 are 9 buline (9 are 3 divizori) Ciuperca 4 are 15 buline (15 are 4 divizori) Ciuperca 8 are 24 buline (24 are 8 divizori)

UItati codul meu:
  1. #include<fstream.h>
  2.  
  3. int main()
  4. {
  5. int n,nr,nrd=0,cf=0,cnf=0,i,j;
  6. ifstream f("cf.in");
  7. ofstream g("cf.out");
  8. f>>n;
  9. for(i=1;i<=n;i++)
  10. {
  11. f>>nr;
  12. for(j=1;j<=nr;j++)
  13.  
  14. if(nr%j==0)
  15.  
  16. nrd++;
  17.  
  18.  
  19. if(nrd==2) cf++;
  20. else cnf++;
  21. }
  22.  
  23. g<<"ciuperci fermecate:"<<cf<<'\n'<<"ciuperci nefermecate:"<<cnf<<'\n';
  24. f.close();g.close();
  25. return 0;
  26.  
  27. }
0,0p / 0 votes
User avatar
adrianav500
Bit
 
Joined: 21 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby eni4ever » 13 Jan 2012, 10:53

Logica este bună, dar vezi că uiți să resetezi numărul de divizori pentru fiecare ciupercuță nouă citită. În felul acesta respectiva variabilă va fi din ce în ce mai mare pe măsură ce se verifică alte bulinuțe, iar tu nu vei suprinde decât, în cel mai bun caz, 1 ciupercuță fermecată (prima).
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Ciupercute fermecate

Postby adrianav500 » 13 Jan 2012, 12:54

Pai cum fac resetarea?
0,0p / 0 votes
User avatar
adrianav500
Bit
 
Joined: 21 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby eni4ever » 13 Jan 2012, 13:04

Ce înțelegi tu prin resetare ?
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Ciupercute fermecate

Postby adrianav500 » 13 Jan 2012, 14:40

Multumesc pentru sfaturi,dar am reusit.
0,0p / 0 votes
User avatar
adrianav500
Bit
 
Joined: 21 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby cata45 » 13 Jan 2012, 16:12

Ne arati si noua codul final? :)
0,0p / 0 votes
The EARTH without ART is just EH.
User avatar
cata45
Byte
 
Joined: 02 Sep 2010
Status: 9

Re: Ciupercute fermecate

Postby adrianav500 » 13 Jan 2012, 17:42

Da,sigur:).cu mare placere
[code][/code]
#include<fstream.h>
int main()

{
ifstream eric ("ciupercute.in");
ofstream erico ("ciupercute.out");
long n,v[101],cate,catenefermecate=0,d,i,catenefermecat,catefermecate=0;
eric>>n;
for (i=1;i<=n;i++)
eric>>v[i];
for (i=1;i<=n;i++){
cate=0;

catenefermecat=0;

for (d=2;d<=v[i]-1;d++){
if (v[i]%d==0)
cate++;
else
catenefermecat++;
}
if(cate==0)
catefermecate++;
else catenefermecate++;
}
erico<<catefermecate<<'\n';
erico<<catenefermecate;
return 0;
}
0,0p / 0 votes
User avatar
adrianav500
Bit
 
Joined: 21 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby eni4ever » 13 Jan 2012, 23:48

Totuși, de dragul consecvenței, ce înțelegi tu Adriana prin "resetare"? Eu nu înțeleg ce spui prin "Multumesc pentru sfaturi,dar am reusit." ? În orice caz : spor în continuare!
0,0p / 0 votes
Image

"Rațiunea vine în umbre scurte numite suferințe." Victor Adăscăliței
"Bender: Anything less than immortality is a complete waste of time.
Zoidberg: Then suicide it is! Step into my office ..." Futurama S06E06
User avatar
eni4ever
DWord
 
Joined: 03 Jan 2010
Location: Timișoara
Status: 57.83

Re: Ciupercute fermecate

Postby eric56 » 14 Jan 2012, 13:58

Sper că observați modul de afișare și citire.
Nu a făcut-o singură ;))
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby cata45 » 14 Jan 2012, 14:00

Offtopic
0,0p / 0 votes
The EARTH without ART is just EH.
User avatar
cata45
Byte
 
Joined: 02 Sep 2010
Status: 9

Re: Ciupercute fermecate

Postby eric56 » 14 Jan 2012, 14:05

cata45 wrote:Offtopic


Din carte ???

Eu nu am luat nimic din carte , dar mă rog (nici nu știu ce carte)

P.S Cum pun opțiunea offtopic??
0,0p / 0 votes
Respecta si vei fi respectat
User avatar
eric56
Bit
 
Joined: 19 Dec 2011
Status: 0

Re: Ciupercute fermecate

Postby cata45 » 14 Jan 2012, 14:38

Citeste aici.
0,0p / 0 votes
The EARTH without ART is just EH.
User avatar
cata45
Byte
 
Joined: 02 Sep 2010
Status: 9


Return to C / C++

Who is online

Users browsing this forum: No registered users and 0 guests

cron