GRY-Online.pl --> Archiwum Forum

Problem z C++

05.12.2004
21:32
[1]

peeyack [ Weekend Warrior ]

Problem z C++

Witam. Poradzcie co z tym programem jest nie tak. Ma zwracac zadane info po wpisaniu odpowiedniego nazwiska, a inne info po wpisaniu jakiegokolwiek innego.
Skladnia jest nastepujaca:

#include<iostream>
#pragma hdrstop
#include <iomanip>
#include <string>
using namespace std;
#pragma argsused
int main(int argc, char* argv[])
‹char i,Kowalski;

cout<<"Wprowadz nazwisko:"<<endl;
cin>>i;
i==Kowalski;
if(i=Kowalski)‹cout<<"Mam dla Ciebie jedna nowa wiadomosc, ktora brzmi:"<<i<<endl;›
else‹cout<<"Nie mam dla Ciebie zadenej wiadomosci"<<endl;›
system("Pause");
return 0;


Czekam z niecierpliowscia na jakiegos fachmana od C++. Dzieki z gory wielkie

05.12.2004
21:38
[2]

ronn [ moralizator ]

Co prawda nie mam jeszcze C++ a jedynie C, ale :

= operator przypisania, czyli jesli masz i=kowalski, to i ZAWSZE bedzie rowne kowalski.

powinno byc ==

05.12.2004
21:40
[3]

Llordus [ Generaďż˝ ]

zaczalbym od tego :)


#pragma hdrstop
#include <iomanip>
#include <string>
using namespace std;
#pragma argsused
int main(int argc, char* argv[])
‹char i,Kowalski;

cout<<"Wprowadz nazwisko:"<<endl;
cin>>i;
i==Kowalski; - po co to????
if(i==Kowalski)‹cout<<"Mam dla Ciebie jedna nowa wiadomosc, ktora brzmi:"<<i<<endl;›
else‹cout<<"Nie mam dla Ciebie zadenej wiadomosci"<<endl;›
system("Pause");
return 0;

05.12.2004
21:41
[4]

diabelek1 [ szczęśliwy ]

i==Kowalski;
if(i=Kowalski)‹


Nie powinno byc:
i=Kowalski;
if(i==Kowalski)‹

05.12.2004
21:42
[5]

Llordus [ Generaďż˝ ]

nie wiem dlaczego nie wygrubilo tego co jeszcze chcialem :)
if(i==Kowalski)

05.12.2004
21:42
[6]

diabelek1 [ szczęśliwy ]

Tak mialo byc

if(i==Kowalski)‹

Ale widze, ze i tak w miedzyczasie juz bylo powiedziane to co milem zamiar powiedzec ;)

05.12.2004
21:43
[7]

Llordus [ Generaďż˝ ]

diabelek --jak zrobi
i=Kowalski
to if (i== Kowalski) zawsze da true :)
co prawda z technicznego punktu jest to mozliwe, niemniej logicznie biorac nie ma najmniejszego sensu! ;)

05.12.2004
21:43
[8]

aka [ Chor��y ]

Tak powinna wygladac zawartosc main:

int main()

string i, n = "Kowalski";

cout<<"Wprowadz nazwisko:"<<endl;
cin>>i;

if(i==n)
cout<<"Mam dla Ciebie jedna nowa wiadomosc, ktora brzmi:"<<i<<endl;
else
cout<<"Nie mam dla Ciebie zadenej wiadomosci"<<endl;
system("Pause");
return 0;

05.12.2004
21:43
[9]

Immothep [ Errare humanum est. ]

diabelek --> żle, bo po wprowadzeniu innego nazwiska i tak zostanie do 'i' przypisane Kowalski, a to nie o to chodzi

05.12.2004
21:45
[10]

Immothep [ Errare humanum est. ]

[edit:]

ooooo ale ruch w wątku ;)

05.12.2004
21:45
[11]

Llordus [ Generaďż˝ ]

jeszcze jedno - jesli robisz cin>>i to czy przypadkiem i nie powinno byc typu char* ??
przyznam szczerze ze cin>> dawno sie nie bawilem, a nie mam teraz tego jak sprawdzic :(

05.12.2004
21:46
smile
[12]

diabelek1 [ szczęśliwy ]

Widze ze sie zamotalem ;)

Pierwszy post - zapomnialem wyciciac pierwszej linijki, drugi post - mialem na mysli, ze powinna sie pjawic zamiast dwoch poczatkowych linijek tylko ta druga. Wiec reasumujac napisze co mialem na mysli:

To:
i==Kowalski;
if(i=Kowalski)


Zamien na to:
if(i==Kowalski)

:)

05.12.2004
21:51
[13]

Llordus [ Generaďż˝ ]

dobra, to jeszcze ja :)

jesli masz #include <string>
to zrob

string i;
i pozniej

cin>>i;

wtedy wczytasz cale nazwisko ;)

06.12.2004
22:47
[14]

peeyack [ Weekend Warrior ]

Dzieki wielkie za pomoc, mam nadzieje, ze sie uda. Ja na C++ sie nie znam, umiem tylko Turbopascala, to bylo dla jednej bliskiej mi osoby, wiec nie powiem wam teraz, czy pomoglo, bo sam nie wiem.

Pozdrawiam

© 2000-2025 GRY-OnLine S.A.