Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
jocuri xbox 360

jocuri xbox 360

Manhattan (2014 - )

PSP update&hack
 masini de spalat vase

[UNDE] gasesc Chromecast in Roman...

Scaner HP Scanjet 3970 nu se porn...

Intrebare achizitie laptop
 Calculator ANAF

Counter strike - skin Resident Ev...

Atasare poze

Bani din cont.
 Alianta Crestin Liberala

XBMC

Pareri SONY GTK-X1BT ?

Sistem pentru editare foto/video....
 

Forumul Softpedia folosește "cookies" pentru a oferi utilizatorilor o experiență completă. Vezi detalii sau închide mesaj (x)

[TEMĂ ]număr de numere pare/impare

  • Please log in to reply
15 replies to this topic

#1
theheaven

theheaven

    Junior

  • Grup: Members
  • Posts: 4
  • Înscris: 11.01.2010
  • ID membru: 549,175

Am o problema la informatica si nu prea reusesc sa ii dau de capat. Se da un numar citit de la tastatura. Trebuie sa fac un program in C++ care sa afiseze numarul de cifre pare si numarul de cifre impare din numarul introdus.

#2
yonut_a

yonut_a

    Active Member

  • Grup: Senior Members
  • Posts: 2,307
  • Înscris: 03.08.2008
  • ID membru: 355,695
  • Locație: Iasi
Si de ce nu ii dai de capat ? Unde te ai incurcat ?

#3
msmihai

msmihai

    Senior Member

  • Grup: Senior Members
  • Posts: 5,183
  • Înscris: 02.09.2006
  • ID membru: 94,954
Asa si? Ce doresti?

#4
dimydesky

dimydesky

    Active Member

  • Grup: Members
  • Posts: 1,668
  • Înscris: 10.02.2010
  • ID membru: 561,117
while(n>0)
{
if((n%10)%2==0)
  par++;
else impar++;
n=n/10;
}

Edited by dimydesky, 07 November 2011 - 15:39.


#5
theheaven

theheaven

    Junior

  • Grup: Members
  • Posts: 4
  • Înscris: 11.01.2010
  • ID membru: 549,175
doresc o rezolvare a programului

Codul folosit de mine..dar nu da :


#include <iostream.h>
#include <conio.h>
#include <math.h>
int main()
{int nr, c, cp, ci=0;
cout<<"Introduceti numarul:";
cin>>nr;
cp=0;
ci=0;
while (nr>0)
{c=nr%10;
if (c%2==0)
cp=cp+1;
else if (c%2!=0)
ci=ci++;
}
cout<<"Numarul de numere pare="<<cp;
cout<<"Numarul de numere impare="<<ci;
}


Dupa rularea acestui program, mi se deschide fereastra, introduc numarul si nu se intampla absolut nimic.



#6
autoplayer

autoplayer

    Active Member

  • Grup: Members
  • Posts: 1,373
  • Înscris: 08.01.2010
  • ID membru: 548,064
  • Locație: In casuta din copac

View Postdimydesky, on 7th November 2011, 15:36, said:

while(n>0)
{
if(n%10%2==0)
  par++;
else impar++;
n=n/10;
}
Nu sunt sigur daca e bine ce am facut (nu stiu inca c f bine) dar cred ca asa vine.

LE. Pt codul tau theheaven (parca) nu vad unde imparti nr la 10 ca sa scapi de ultima cifra (ca sa le ei pe rand). Adica prelucrezi ultima cifra si o stergi si faci asa pana nr=0. Plus ca in else nu cred ca mai e nevoie de conditia
if (c%2!=0)

Edited by autoplayer, 07 November 2011 - 15:41.


#7
yonut_a

yonut_a

    Active Member

  • Grup: Senior Members
  • Posts: 2,307
  • Înscris: 03.08.2008
  • ID membru: 355,695
  • Locație: Iasi

View Postdimydesky, on 7th November 2011, 15:36, said:

while(n>0)
{
if(n%10==0)
  par++;
else impar++;
n=n/10;
}


if(n%10==0) aici testezi daca numarul e divizibil cu 10 in niciun caz daca e par sau impar.

@theheaven
ai uitat sa treci la urmatoare cifra pentru nr

LE vad ca ai corectat

Edited by yonut_a, 07 November 2011 - 15:40.


#8
dimydesky

dimydesky

    Active Member

  • Grup: Members
  • Posts: 1,668
  • Înscris: 10.02.2010
  • ID membru: 561,117
Da , asa e scuze m-am grabit :)

#9
ady_95

ady_95

    Active Member

  • Grup: Members
  • Posts: 1,334
  • Înscris: 23.12.2009
  • ID membru: 542,513
  • Locație: Bacau
in ce compiler lucrezi??

#10
theheaven

theheaven

    Junior

  • Grup: Members
  • Posts: 4
  • Înscris: 11.01.2010
  • ID membru: 549,175

Lucrez in mingw
Asa este. Am dat de capat. Am folosit metoda lui autoplayer.
Multumesc mult :D

#11
theheaven

theheaven

    Junior

  • Grup: Members
  • Posts: 4
  • Înscris: 11.01.2010
  • ID membru: 549,175
Mai nou am aflat ca am de facut programul cu 2 functii..
adica una special care sa imi calculeze par, si una special care sa imi calculeze impar, amandoua in acelasi program...8-|

#12
MarianG

MarianG

    ˈtwɪtə(r) [Cereal chilăr]

  • Grup: Senior Members
  • Posts: 10,065
  • Înscris: 10.08.2005
  • ID membru: 43,530
  • Locație: Iasi
explica-mi si mie ce se intamlpa aici
if (c%2==0)
cp=cp+1;
else if (c%2!=0)


#13
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Moderators
  • Posts: 18,368
  • Înscris: 10.08.2006
  • ID membru: 90,638
  • Locație: Far away
Salut.

Vezi te rog noul titlu al topicului tău.

De acum încolo alege-ți un titlu sugestiv, care să îi atragă pe cei interesați de subiect. "Ajutor", "Problemă", etc NU sunt titluri sugestive, TOATE subiectele de aici sunt cerințe de ajutor la probleme în C/C++.

Dacă ți-e greu să alegi titlul, și apoi să scrii conținutul efectiv, atunci scrie mai întâi problema (important: să fie o singură problemă, cu o singură cerință, nu de la 2 teme în sus), și apoi alege cuvintele cheie de natură tehnică din cele scrise și pune-le ca titlu.

Mulțumesc anticipat

#14
mariod13

mariod13

    Junior

  • Grup: Members
  • Posts: 88
  • Înscris: 23.02.2011
  • ID membru: 667,738

View PostMarianG, on 8th November 2011, 12:19, said:

explica-mi si mie ce se intamlpa aici
if (c%2==0)
cp=cp+1;
else if (c%2!=0)

daca ultima cifra e para, incrementeaza cp, altfeldaca ultima cifra e impara(aici else era de ajuns, daca nu respecta prima conditie, a doua sigur e respectata) incrementeaza ci;

#include<iostream.h>
void main(){

int numar, par=0, impar=0;

cout<<"Numarul?";cin>>numar;

//par
while(numar!=0){
   if((numar%10)%2 == 0) par++;
   numar/=10; //numar=numar/10;
}

//impar
while(numar!=0){
   if((numar%10)%2 != 0) impar++;
   numar/=10; //numar=numar/10;
}
  
cout<<"par: "<<par<<";impar: "<<impar;
}
theheaven - nu mai folosi librarii aiurea. Pt ce ai folosit conio.h(nu ai pus nici clrscr();, nici getch()) si math.h(de aici chiar nu ai folosit nicio functie) ?

Edited by mariod13, 30 November 2011 - 23:43.


#15
MarianG

MarianG

    ˈtwɪtə(r) [Cereal chilăr]

  • Grup: Senior Members
  • Posts: 10,065
  • Înscris: 10.08.2005
  • ID membru: 43,530
  • Locație: Iasi
vroiam sa raspunda @theheaven

Edited by MarianG, 01 December 2011 - 11:01.


#16
caliux

caliux

    Junior

  • Grup: Members
  • Posts: 297
  • Înscris: 04.02.2010
  • ID membru: 558,715
  • Locație: Romania Bucuresti
Greseala ta este ca uitati sa tai din n.
Ca tot folosesti Mingw poti folosi quick watch si vezi cum se modifica datele.
Il gasesti la meniul Debug.
Incearca-l si spune-ne cum ti se pare.Pe mine m-a ajutat sper ca si pe tine .

Reclamă

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users