Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Pomocy!!! Ćwiczenie 7.6 zad.1

Ostatnio zmodyfikowano 2009-07-24 14:58
Autor Wiadomość
artur_rm
Temat założony przez niniejszego użytkownika
Pomocy!!! Ćwiczenie 7.6 zad.1
» 2009-07-24 12:35:47
Nie mogę sobie poradzić z tym ćwiczeniem, z dziwnego powodu. Po skompilowaniu, kiedy wpisze nazwe ulicy, która jest dłuższa niż 2 litery, przeskakuje mi cały program. Tak samo jest, gdy próbuje podać w numerze domu coś po / np. 34/56. O to mój kod:

C/C++
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
    char ulica;
    int numer;
    int ocena;
    int staz;
   
    cout << "  Podaj nazwe ulicy na ktorej mieszkasz: ";
    cin >> ulica;
    cin.get();
    cout << endl;
    cout << "Podaj numer domu: ";
    cin >> numer;
    cout << endl;
    cout << "Na ile oceniasz swoje umiejetnosci programowania w skali 2-6: ";
    cin >> ocena;
    cout << endl;
    cout << "Twoj staz programistyczny: ";
    cin >> staz;
    cout << endl;
    cout << endl;
    cout << endl;
    cout << "Adres: " << ulica << " " << numer << endl;
    cout << "Ocena: " << ocena << endl;
    cout << "Staz: " << staz << endl;
   
    getch();
    return 0;
}
Proszę o szybka pomoc!!!
P-8748
Onizuka
» 2009-07-24 13:06:46
W Twoim programie zmienna ulica to pojedyncza zmienna typu char, więc gdy podasz więcej niż jeden znak program się wysypuje. Poczytaj lekcję o ciągach znaków - http://kursy.ddt.pl/?LessonId=14. Co do numeru domu: int to liczba całkowita, a 34/56 na bank nią nie jest, więc lepiej tez użyj tablicy char.
P-8749
artur_rm
Temat założony przez niniejszego użytkownika
jeszcze cos
» 2009-07-24 13:16:58
wszystko dziala ok, nazwa ulicy i numer domu ze znakiem /, wszystko oprucz jednej rzeczy, gdy wpisuje nazwe ulicy ktora sklada sie z dwoch slow omija mi wpisywanie numeru domu i odrazu idzie do podania oceny, wiesz co z tym zrobic?
P-8750
makciek
» 2009-07-24 13:28:35
zrob coś takiego:
C/C++
cin.getline( tab[ 0 ], 50 );
cin.get();

nie widze twoich wcześniejszych wiad, ale zamiast samego .get daj ten kod tylko podmień nazwy zmiennych  i ilość znaków
P-8751
artur_rm
Temat założony przez niniejszego użytkownika
dziala ale
» 2009-07-24 13:33:56
dziala, tylko, ze teraz jak wpisze i klikne enter to mi przeskakuje na nastepna linijke i jak znowu klikne enter to dopiero wyswietla sie dalej, dlaczego tak sie dzieje?
P-8752
makciek
» 2009-07-24 14:04:00
pokaz cały kod ten po wszystkich zmianach
P-8753
artur_rm
Temat założony przez niniejszego użytkownika
» 2009-07-24 14:23:21
C/C++
#include <iostream>
#include <conio.h>
using namespace std;

int main()
{
    char ulica[ 50 ];
    char numer[ 50 ];
    int ocena;
    int staz;
   
    cout << "Podaj nazwe ulicy na ktorej mieszkasz: ";
    cin.getline( ulica, 50 );
    cin.get();
    cout << "Podaj numer domu: ";
    cin >> numer;
    cout << endl;
    cout << "Na ile oceniasz swoje umiejetnosci programowania w skali 2-6: ";
    cin >> ocena;
    cout << endl;
    cout << "Twoj staz programistyczny: ";
    cin >> staz;
    cout << endl;
    cout << endl;
    cout << endl;
    cout << "Adres: " << ulica << " " << numer << endl;
    cout << "Ocena: " << ocena << endl;
    cout << "Staz: " << staz << endl;
   
    getch();
    return 0;
}
P-8754
Onizuka
» 2009-07-24 14:53:57
cin.get();
Ta linijka czeka na wciśnięcie klawisza. Usuń ją i będzie po kłopocie
P-8755
« 1 » 2
  Strona 1 z 2 Następna strona