Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-03 09:47:12 Dzisiaj postram się to napisać i wrzuce tutaj i mi sprawdzicie i poprawicie program |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-03 13:37:32 Tutaj mam taki program tylko mam problem #include <conio.h> #include <iostream> #include "console.ddt"
using namespace std; using namespace ddt::console;
class Samochod { protected: string kolor; string rodzaj; string marka; string masa; string predkosc; string pojemnosc; string wysokosc; public: void wczytaj() { cout << " Podaj kolor:"; cin >> kolor; cout << " Podaj rodzaj:"; cin >> rodzaj; cout << " Podaj marke:"; cin >> marka; cout << " Podaj mase:"; cin >> masa; cout << " Podaj predkosc:"; cin >> predkosc; cout << " Podaj pojemnosc:"; cin >> pojemnosc; cout << " Podaj wysokosc:"; cin >> wysokosc; } void wyswietl() { cout << "rodzaj" << rodzaj << endl; cout << "kolor" << kolor << endl; cout << "marka" << marka << endl; cout << "masa" << masa << endl; cout << "predkosc" << predkosc << endl; cout << "pojemnosc" << pojemnosc << endl; cout << "wysokosc" << wysokosc << endl; } };
int main( int argc, char * argv[] ) { Samochod samo1; cout << "Dame samochodu pierwszego: " << endl; samo1.wczytaj(); Samochod samo2; cout << "Dame samochodu drugiego: " << endl; samo2.wczytaj(); int licznik = 10, znak; gotoxy( 30, 10 ); textcolor( 920 ); cout << "1 - Samochod S1" << endl; gotoxy( 30, 11 ); textcolor( 101 ); cout << "2- Samochod S2" << endl; gotoxy( 30, 12 ); textcolor( 203 ); cout << "Wyjscie" << endl; gotoxy( 30, 15 ); textcolor( 203 ); cout << "Esc - Koniec" << endl; gotoxy( 30, 16 ); textcolor( 1010 ); cout << "Enter - Wybieranie" << endl; gotoxy( 25, licznik ); textcolor( 999 ); cout << "->" << endl; do { znak = getch(); if( znak == 224 ) znak = getch(); switch( znak ) { case 80: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 12 ) { licznik = 10; } else { licznik++; } gotoxy( 25, licznik ); cout << "->" << endl; } break; case 72: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 10 ) { licznik = 12; } else { licznik--; } gotoxy( 25, licznik ); cout << "->" << endl; } break; case 13: { switch( licznik ) { case 10: clrscr(); samo1.wyswietl(); break; case 11: clrscr(); samo2.wyswietl(); getch(); break; } case 12: { clrscr(); return EXIT_SUCCESS; } break; default: { clrscr(); cout << "eror" << endl; } break; } } } while( znak != 27 ); return EXIT_SUCCESS; }
Jak wybiore żeby mi się wyświetliły dane Samochodu S1 to nie wiem jak zrobic że jak nacisne jakiś klawisze zebym powrócił do Menu i wybiore wtedy żeby mi sie wyświetliły dane samochodu S2 nie wiem jak to zrobic bo jak naciskam jakiś klawisz to program my sie zamyka Nie wiem jak zrobić powrót do Menu Prosze o wasza pomoc Pozdrawiam Ewentualnie prosze powiedzieć co mam zmienić żeby program działał i wyglądał lepiej |
|
GoldWolf |
» 2009-05-03 16:28:25 Proszę o to by poczekać na odpowiedź, użytkownika.
Zadam ci proste pytania: 1. Czy to ty napisałeś tą aplikację, 2. czy przerobiłeś kurs, 3. po co piszesz tą aplikację?
Zauważyłem kilka błędów w twojej aplikacji, jeśli szczerze odpowiesz to Cię na nie naprowadzę. |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-03 20:22:10 Tak ja napisałem ten program Kurs przeprobiłem pobierznie , przerobiłem szczególowo te zagadnienia które były potrzebne do napisania tego programu a po co to pisze to moje zadania z informatyki na laborki z infy Jak zrobić powrót do Menu jeśli wyświetle dane Samochodu S1 i chcem wrocic do Menu i wyswietlic dane Samochodu S2 Jak to zrobic ?? |
|
GoldWolf |
» 2009-05-03 21:09:26 To zacznijmy po pierwsze ostatni kod co podałeś działa tak, iż najpierw wprowadzasz dwa samochody, a potem dopiero masz dostęp do programu, więc jeśli tak ma być to: Samochod samo1, samo2;
cout << "Dame samochodu pierwszego: " << endl; samo1.wczytaj();
cout << "Dame samochodu drugiego: " << endl; samo2.wczytaj(); clrscr();
Druga sprawa zastanów się czy potrzebujesz tego: case 12: { clrscr(); return EXIT_SUCCESS; } break; default: { clrscr(); cout << "eror" << endl; } break;
przynajmniej na razie by się w tym odnaleźć. |
|
GoldWolf |
» 2009-05-03 21:29:04 Kolejna rzeczy warta wyjaśnienia to: switch( licznik ) { case 10: clrscr(); samo1.wyswietl(); break; case 11: clrscr(); samo2.wyswietl(); getch(); break; }
case 10 -> wyświetla samochód 1, a case 11 drugi, jeśli tak jest to dlaczego kody obu się różnią? Kolejna, rzecz do przemyślenia to zastanów się czy nie warto zrobić osobnej funkcji dla tej części kodu: gotoxy( 30, 10 ); textcolor( 920 ); cout << "1 - Samochod S1" << endl; gotoxy( 30, 11 ); textcolor( 101 ); cout << "2- Samochod S2" << endl; gotoxy( 30, 12 ); textcolor( 203 ); cout << "Wyjscie" << endl; gotoxy( 30, 15 ); textcolor( 203 ); cout << "Esc - Koniec" << endl; gotoxy( 30, 16 ); textcolor( 1010 ); cout << "Enter - Wybieranie" << endl; gotoxy( 25, licznik ); textcolor( 999 ); cout << "->" << endl;
Funkcja by się mogła nazywać menu. |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-03 21:49:09 Zrobiłem to co napisałeś!!!! Tak zauwazyłem co się zmieniło jak dałem funkcje wyczyść teraz jest prograb bardziej czytelny i przejerzysty ale w sumie to jest to samo. A te case 12 itp to w sumie nie jest potrzebne bo można wyjść z programu klawiszem ale zrobiłem wyjście z programu dla picu na dwa sposoby. Jedna własnie tym drugie klawiszem ESc. #include <conio.h> #include <iostream> #include "console.ddt"
using namespace std; using namespace ddt::console;
class Samochod { protected: string kolor; string rodzaj; string marka; string masa; string predkosc; string pojemnosc; string wysokosc; public: void wczytaj() { cout << " Podaj kolor:"; cin >> kolor; cout << " Podaj rodzaj:"; cin >> rodzaj; cout << " Podaj marke:"; cin >> marka; cout << " Podaj mase:"; cin >> masa; cout << " Podaj predkosc:"; cin >> predkosc; cout << " Podaj pojemnosc:"; cin >> pojemnosc; cout << " Podaj wysokosc:"; cin >> wysokosc; } void wyswietl() { cout << "rodzaj" << rodzaj << endl; cout << "kolor" << kolor << endl; cout << "marka" << marka << endl; cout << "masa" << masa << endl; cout << "predkosc" << predkosc << endl; cout << "pojemnosc" << pojemnosc << endl; cout << "wysokosc" << wysokosc << endl; } };
int main( int argc, char * argv[] ) { Samochod samo1; cout << "Dame samochodu pierwszego: " << endl; samo1.wczytaj(); Samochod samo2; cout << "Dame samochodu drugiego: " << endl; samo2.wczytaj(); clrscr(); int licznik = 10, znak; gotoxy( 30, 10 ); textcolor( 920 ); cout << "1 - Samochod S1" << endl; gotoxy( 30, 11 ); textcolor( 101 ); cout << "2- Samochod S2" << endl; gotoxy( 30, 12 ); textcolor( 203 ); cout << "Wyjscie" << endl; gotoxy( 30, 15 ); textcolor( 203 ); cout << "Esc - Koniec" << endl; gotoxy( 30, 16 ); textcolor( 1010 ); cout << "Enter - Wybieranie" << endl; gotoxy( 25, licznik ); textcolor( 999 ); cout << "->" << endl; do { znak = getch(); if( znak == 224 ) znak = getch(); switch( znak ) { case 80: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 12 ) { licznik = 10; } else { licznik++; } gotoxy( 25, licznik ); cout << "->" << endl; } break; case 72: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 10 ) { licznik = 12; } else { licznik--; } gotoxy( 25, licznik ); cout << "->" << endl; } break; case 13: { switch( licznik ) { case 10: clrscr(); samo1.wyswietl(); break; case 11: clrscr(); samo2.wyswietl(); getch(); break; } case 12: { clrscr(); return EXIT_SUCCESS; } break; default: { clrscr(); cout << "eror" << endl; } break; } } } while( znak != 27 ); return EXIT_SUCCESS; }
Chodzi mi o ta rzecz jak powrót do Menu nie mam pojęcia jak to zrobić. Podam przykład żebysceio wiedzieli o co mi chodzi : Najpierw podane parametry dwóch aut S1 i S2 masa , rodzaj , itd jak to wprowadze wyświetla mi się Menu gdzie wybieram którego auta paramerty maja mi się wyświetlic wybieram s1 i ekran z menu sie czyści i wyswietalne mi sa parametry samochodu S1 i jak nacisne dowlony klawisz program zamyka się ja nie chcem tak chcem zrobic ze jak nacisne dowolny klawisz to wracam do menu i wybieram parametry samochodu s2 i mi sie wyświetalaj i poxniej znwo po nacisnieciu wracam do menu i tak wkólko zamyak sie progrma gdy nacsine ESc. Prosze pwoiedzieć jak zrobić żeby program tak działał |
|
GoldWolf |
» 2009-05-03 21:56:03 Pytasz o to już 100 raz ja ci nie odpowiem wprost.
Zamień to co wspominałem na funkcje podpowiem ci jak będzie wyglądać nazwa funkcji np. void menu(int liczba){
odpowiedni kod
}
A jeśli odpowiesz dlaczego chce byś zrobił z tego funkcję, wkleję ci cały kod. Źle też, że nie robisz komentarzy programu trudno się połapać co i jak, a raczej traci się czas by skumać o co biega. |
|
1 « 2 » 3 4 5 6 7 8 9 |