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

Nie mogę odnaleźć błędów w kodzie

Ostatnio zmodyfikowano 2007-10-07 19:03
Autor Wiadomość
DejaVu
» 2007-10-07 18:03:59
[tutorial]
Sądzę, że w obecnym stanie w jakim masz ten kod nikt się nie podejmie jego poprawniania, ze względu na to, że:
a) liczba nawiasów otwierających bloki jest różna od liczby bloków zamykających
b) często używasz zapisu return(0);
c) zagnieżdżasz switch... case
d) używasz takiego zapisu: }while(1);// kogzamy ;o\ kilkukrotnie
e) program wygląda jak sklejany z kilku źródeł, a następnie wrzucony dlatego, że się nie kompiluje
f) prawdopodobieństwo, że ten cały program napisałeś sam bez ani jednej kompilacji jest bliskie zeru. Błędy nie pojawiły się nagle, tylko są moim zdaniem wynikiem tego, że źle go poskładałeś.

Moim zdaniem powinieneś wrócić do kursu i kompilować swoje projekty na bieżąco. Zgłaszaj się na forum z problemami, gdy masz już jeden problem z kompilacją, a nie wiele błędów.

Reasumując:

postaraj się wydzielić bloki które Cię interesują, żeby ktoś Ci poprawił (były poprawne składniowo) bo nie wiesz jak to zrobić, a nie dajesz caały długi program który ma wiele błędów, których poprawienie może zająć nawet z godzinę dla dobrego programisty.[/tutorial]
P-15
DejaVu
» 2007-10-07 19:32:08
a) program pisałem sam.
b) zostane przy starej wersji
ta wersja którą tu pokazałem była próbą zrobienia
wielopoziomowego menu majacego usprawnic program :)
wkońcu to tylko program do liczenia zadań domowych ;d

c) topik mozna zamknac
xD
Możesz zrobić wielopziomowe menu np. tak:
C/C++
switch(...)
{
case 1:
    switch(...)
    {
    case 1:
        break;
    }
    break;
}
Problem w tym, że czytelność kodu staje się bardzo słaba i dość trudno jest później taki kod rozbudowywać.

Jeśli chcesz, aby Twoje programy z wielopoziomowym menu zawsze były sprawne to:
1. tworzysz najpierw jeden poziom
2. Jeśli cały jeden poziom Tobie działa to
3. Tworzysz osobno drugi poziom (bez zagnieżdżania)
4. Jeśli cały drugi poziom działa sprawnie to
5. Wycinasz poziom który ma być zagnieżdżony i wklejasz go do drugiego w odpowiednie miejsce, które Ciebie interesuje.

W ten sposób zapewnisz sobie poprawność kodu i wszystko będzie działało si :)
P-16
Cyrio
Temat założony przez niniejszego użytkownika
Nie mogę odnaleźć błędów w kodzie
» 2007-10-07 17:55:03
C/C++
#include <iostream>
#include <conio.h>
#include <math.h>
using namespace std;
#include "console.ddt"
using namespace ddt::console;
int main()

{
   
    cout << "Witaj oto Mini Kalkulatorek xD" << endl; // Program autorstwa Cyrio
    cout << "-" << endl;
    cout << "CC9 CyrioCalc9 Proffesional" << endl;
    cout << "-" << endl;
    cout << "READ PRZECZYTAJ INFO" << endl;
    cout << "Aby Napisac liczbe z przecinkiem" << endl;
    cout << "Zastap przecinek kropka" << endl;
    cout << "3,14 -> 3.14" << endl;
    cout << "liczby z normalnym przecinkiem" << endl;
    cout << "a nie kropka nie beda dzialac" << endl;
    cout << "" << endl;
    cout << "Zapraszamy na http://stop12.freeflux.net" << endl;
    cout << "" << endl;
    cout << "(c)2007 by CYRIO" << endl;
    cout << "Poland CDEVministudios" << endl;
    cout << "" << endl;
    cout << "Milego i Latwego Liczenia" << endl;
    cout << "Zyczy CYRIO" << endl;
    cout << "" << endl;
    cout << "" << endl;
    char wyraz[ 100 ];
    cout << "Twoj nick?: ";
    cin >> wyraz;
    float a;
    float b;
    float c;
    float h;
    float s;
    float r;
    float lol;
    bool cyrio;
    cout << "" << endl;
    cout << "Elo \"" << wyraz << "\"" << endl;
    cout << "" << endl;
    cout << "Witaj w tym kox Kalkulatorku :)" << endl;
    cout << "" << endl;
    do
    {
        cyrio = true;
        cout << "" << endl;
        cout << "Wcisnij dowolny klawisz aby kontynuowac" << endl;
        cout << "" << endl;
        getch();
        cout << "" << endl;
        cout << "[1] Matematyka - Obliczenia Potegi i Pierwiastki" << endl;
        cout << "[2] Matematyka - Pola i Objetosci" << endl;
        cout << "[3] Fizyka - Wzory" << endl;
        cout << "[4] Wszystko na jednej liscie" << endl;
        cout << "Wybierz kategorie: ";
        int wybor2;
        cin >> wybor2;
        cout << "" << endl;
        cout << endl << "Wpisales numer: " << wybor2 << endl;
        cout << "" << endl;
        switch( wybor2 );
       
        (
       
    case 1:
        cout << "Matematyka - Obliczenia Potegi i Pierwiastki" << endl;
        cout << "[1] Oblicz: a+b" << endl;
        cout << "[2] Oblicz: a-b" << endl;
        cout << "[3] Oblicz: a*b" << endl;
        cout << "[4] Oblicz: a/b" << endl;
        cout << "[5] Pierwiastek 2giego Stopnia" << endl;
        cout << "[6] Pierwiastek 3ciego Stopnia" << endl;
        cout << "[7] Podnoszenie do Potegi" << endl;
        cout << "[8] Zaokraglanie" << endl;
        cout << "[69] exit" << endl;
       
        cout << "Wpisz numer obliczenia: ";
        int wybor3;
        cin >> wybor3;
        cout << "" << endl;
        cout << endl << "Wpisales numer: " << wybor3 << endl;
        cout << "" << endl;
        switch( wybor3 )
        {
        case 1: //kategoria matematyka i obliczenia
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Wynik dodawania A+B=" << a + b << endl;
            cout << "";
            break;
        case 2:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Wynik odejmowania A-B=" << a - b << endl;
            cout << "";
            break;
        case 3:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Wynik mnozenia A*B=" << a * b << endl;
            cout << "";
            break;
        case 4:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Wynik dzielenia A/B=" << a / b << endl;
            cout << "";
            break;
        case 5:
            cout << "Liczba a =";
            cin >> a;
            cout << "Pierwiastek A=" << sqrt( a ) << endl;
            break;
        case 6:
            cout << "Liczba a =";
            cin >> a;
            cout << "Pierwiastek A=" << sqrt( a ) << endl;
            break;
        case 7:
            double liczba, potega;
            cout << "Podaj liczbe: ";
            cin >> liczba;
            cout << "Do ktorej potegi podniesc liczbe " << liczba << "? Wpisz wartosc: ";
            cin >> potega;
            cout << "pow(" << liczba << "," << potega << ")=" << pow( liczba, potega ) << endl;
            break;
        case 8:
            double a;
            cout << "Podaj liczbe: ";
            cin >> a;
            cout << "Zaokraglona liczba wynosi:" << a << endl;
            break;
        default:
            getch();
            return( 0 );
        case 69:
            cout << "LOL Chcesz Wyjsc?" << endl;
            cout << "No to czesc " << wyraz << endl;
            cout << "Program CyrioCALC Zostal Wykonany Przez Cyria" << endl;
            cout << "*-*-*" << endl;
            cout << "Wcisnij dowolny Klawisz aby Wyjsc z Programu" << endl;
        } while( 1 ); // kogzamy ;o
       
    case 2: //Matematyka Pola i Objetosci
        cout << "Matematyka - Pola i Objetosci" << endl;
        cout << "[1] Pole kola(A to promien)" << endl;
        cout << "[2] Twierdzenie Pitagorasa(Oblicz bok C)" << endl;
        cout << "[3] Twierdzenie Pitagorasa(Oblicz bok B)" << endl;
        cout << "[4] Twierdzenie Pitagorasa(Oblicz bok A)" << endl;
        cout << "[5] Pole Kwadratu" << endl;
        cout << "[6] Pole Trojkata" << endl;
        cout << "[7] Pole Trapezu" << endl;
        cout << "[8] Pole Prostokata" << endl;
        cout << "[9] Pole Rombu" << endl;
        cout << "[11] Objetosc Ostroslupa" << endl;
        cout << "[12] Objetosc Szescianu" << endl;
        cout << "[69] exit" << endl;
        int wybor4;
        cin >> wybor4;
        cout << "" << endl;
        cout << "Wpisales numer: " << wybor4 << endl;
        cout << "" << endl;
        switch( wybor4 )
        {
        case 1:
            cout << "Liczba r =";
            cin >> r;
            cout << "Pole Kola=" << 3.14 *( r * r ) << endl;
            break;
        case 2:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Bok C=" << sqrt(( a * a ) +( b * b ) ) << endl;
            break;
        case 3:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba c =";
            cin >> c;
            cout << "Bok b=" << sqrt(( c * c ) -( a * a ) ) << endl;
            break;
        case 4:
            cout << "Liczba c =";
            cin >> c;
            cout << "Liczba b =";
            cin >> b;
            cout << "Bok A=" << sqrt(( c * c ) -( b * b ) ) << endl;
            break;
        case 5:
            cout << "Liczba a =";
            cin >> a;
            cout << "Pole=" << a * a << endl;
            break;
        case 6:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba h =";
            cin >> h;
            cout << "Pole=" <<( a * h ) / 2 << endl;
            break;
        case 7:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Liczba h =";
            cin >> h;
            cout << "Pole=" <<(( a + b ) + h ) / 2 << endl;
            break;
        case 8:
            cout << "Liczba a =";
            cin >> a;
            cout << "Liczba b =";
            cin >> b;
            cout << "Pole=" << a * b << endl;
            break;
        case 9:
            cout << "Liczba d1 =";
            cin >> a;
            cout << "Liczba d2 =";
            cin >> b;
            cout << "Pole=" <<( a * b ) / 2 << endl;
            break;
        case 10:
            cout << "Liczba h =";
            cin >> a;
            cout << "Liczba s =";
            cin >> b;
            cout << "Pole=" <<( h * s ) / 3 << endl;
            break;
        case 11:
            cout << "Liczba a =";
            cin >> a;
            cout << "Pole=" << a * a * a << endl;
            break;
        default:
            getch();
            return( 0 );
        case 69:
            cout << "LOL Chcesz Wyjsc?" << endl;
            cout << "No to czesc " << wyraz << endl;
            cout << "Program CyrioCALC Zostal Wykonany Przez Cyria" << endl;
            cout << "*-*-*" << endl;
            cout << "Wcisnij dowolny Klawisz aby Wyjsc z Programu" << endl;
            getch(); // Program autorstwa Cyrio
            return( 0 ); // :) wiem ze fajny xD
        } } while( 1 ); // kogzamy ;o
   
case 3: //kajs3 fizyka
    int wybor5;
    cin >> wybor5;
    cout << "" << endl;
    cout << "Wpisales numer: " << wybor5 << endl;
    cout << "" << endl;
    switch( wybor5 )
    {
    case 1:
        cout << "Podaj przemieszczenie: ";
        cin >> a;
        cout << "" << endl;
        cout << "Podaj Czas Przemieszczenia: ";
        cin >> b;
        cout << "" << endl;
        cout << "Predkosc Wynosi:" << a / b << endl;
        break;
    case 2:
        cout << "Podaj przemieszczenie: ";
        cin >> a;
        cout << "" << endl;
        cout << "Podaj przyrost Czasu: ";
        cin >> b;
        cout << "" << endl;
        cout << "Predkosc Chwilowa Wynosi Wynosi:" << a / b << endl;
        break;
    case 3:
        cout << "Podaj przemieszczenie: ";
        cin >> a;
        cout << "" << endl;
        cout << "Podaj czas trwania ruchu(przyrost czasu): ";
        cin >> b;
        cout << "" << endl;
        cout << "Predkosc srednia wynosi:" << a / b << endl;
        break;
    case 4:
        cout << "Podaj przyspieszenie: ";
        cin >> a;
        cout << "" << endl;
        cout << "Podaj jednostke przyspieszenia (bez sekund itp. tylko metry kilometry itp.)" << endl;
        char jednostka[ 100 ];
        cin >> jednostka;
        cout << "Podaj czas trwania ruchu: ";
        cin >> b;
        cout << "" << endl;
        cout << "Przebyta droga:" <<( a *( b * b ) ) / 2;
        cout << "" << jednostka;
        break;
        default:
        getch();
        return( 0 );
    case 69:
        cout << "LOL Chcesz Wyjsc?" << endl;
        cout << "No to czesc " << wyraz << endl;
        cout << "Program CyrioCALC Zostal Wykonany Przez Cyria" << endl;
        cout << "*-*-*" << endl;
        cout << "Wcisnij dowolny Klawisz aby Wyjsc z Programu" << endl;
        getch(); // Program autorstwa Cyrio
        return( 0 ); // :) wiem ze fajny xD
    } } while( 1 ); // kogzamy ;o

case 3: //kajs3 fizyka ;o
case 4:
cout << "*-(OBLICZ)-*" << endl;
cout << "[1] Oblicz: a+b" << endl;
cout << "[2] Oblicz: a-b" << endl;
cout << "[3] Oblicz: a*b" << endl;
cout << "[4] Oblicz: a/b" << endl;
cout << "[5] Pierwiastek 2giego Stopnia" << endl;
cout << "[6] Pierwiastek 3ciego Stopnia" << endl;
cout << "[7] Pole kola(A to promien)" << endl;
cout << "[8] Twierdzenie Pitagorasa(Oblicz bok C)" << endl;
cout << "[9] Twierdzenie Pitagorasa(Oblicz bok B)" << endl;
cout << "[10] Twierdzenie Pitagorasa(Oblicz bok A)" << endl;
cout << "[11] Pole Kwadratu" << endl;
cout << "[12] Pole Trojkata" << endl;
cout << "[13] Pole Trapezu" << endl;
cout << "[14] Pole Prostokata" << endl;
cout << "[15] Pole Rombu" << endl;
cout << "[16] Objetosc Ostroslupa" << endl;
cout << "[17] Objetosc Szescianu" << endl;
cout << "[18] Podnoszenie do Potegi" << endl;
cout << "[19] Zaokraglanie" << endl;
cout << "[20] Fizyka: Predkosc" << endl;
cout << "[21] Fizyka: Predkosc Chwilowa" << endl;
cout << "[22] Fizyka: Predkosc Srednia" << endl;
cout << "[23] Fizyka: Przebyta Droga(Ruch jednostajnie Przyspieszony)" << endl;
cout << "[69] Koniec :)" << endl;

cout << "Wpisz numer obliczenia: ";
int wybor;
cin >> wybor;
cout << "" << endl;
cout << "Wpisales numer: " << wybor << endl;
cout << "" << endl;
switch( wybor )
{
case 1:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Wynik dodawania A+B=" << a + b << endl;
    cout << "";
    break;
case 2:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Wynik odejmowania A-B=" << a - b << endl;
    cout << "";
    break;
case 3:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Wynik mnozenia A*B=" << a * b << endl;
    cout << "";
    break;
case 4:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Wynik dzielenia A/B=" << a / b << endl;
    cout << "";
    break;
case 5:
    cout << "Liczba a =";
    cin >> a;
    cout << "Pierwiastek A=" << sqrt( a ) << endl;
    break;
case 6:
    cout << "Liczba a =";
    cin >> a;
    cout << "Pierwiastek A=" << sqrt( a ) << endl;
    break;
case 7:
    cout << "Liczba r =";
    cin >> r;
    cout << "Pole Kola=" << 3.14 *( r * r ) << endl;
    break;
case 8:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Bok C=" << sqrt(( a * a ) +( b * b ) ) << endl;
    break;
case 9:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba c =";
    cin >> c;
    cout << "Bok b=" << sqrt(( c * c ) -( a * a ) ) << endl;
    break;
case 10:
    cout << "Liczba c =";
    cin >> c;
    cout << "Liczba b =";
    cin >> b;
    cout << "Bok A=" << sqrt(( c * c ) -( b * b ) ) << endl;
    break;
case 11:
    cout << "Liczba a =";
    cin >> a;
    cout << "OPole=" << a * a << endl;
    break;
case 12:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba h =";
    cin >> h;
    cout << "Pole=" <<( a * h ) / 2 << endl;
    break;
case 13:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Liczba h =";
    cin >> h;
    cout << "Pole=" <<(( a + b ) + h ) / 2 << endl;
    break;
case 14:
    cout << "Liczba a =";
    cin >> a;
    cout << "Liczba b =";
    cin >> b;
    cout << "Pole=" << a * b << endl;
    break;
case 15:
    cout << "Liczba d1 =";
    cin >> a;
    cout << "Liczba d2 =";
    cin >> b;
    cout << "Pole=" <<( a * b ) / 2 << endl;
    break;
case 16:
    cout << "Liczba h =";
    cin >> a;
    cout << "Liczba s =";
    cin >> b;
    cout << "Pole=" <<( h * s ) / 3 << endl;
    break;
case 17:
    cout << "Liczba a =";
    cin >> a;
    cout << "Pole=" << a * a * a << endl;
    break;
case 18:
    double liczba, potega;
    cout << "Podaj liczbe: ";
    cin >> liczba;
    cout << "Do ktorej potegi podniesc liczbe " << liczba << "? Wpisz wartosc: ";
    cin >> potega;
    cout << "pow(" << liczba << "," << potega << ")=" << pow( liczba, potega ) << endl;
    break;
case 19:
    double a;
    cout << "Podaj liczbe: ";
    cin >> a;
    cout << "Zaokraglona liczba wynosi:" << a << endl;
    break;
case 20:
    cout << "Podaj przemieszczenie: ";
    cin >> a;
    cout << "" << endl;
    cout << "Podaj Czas Przemieszczenia: ";
    cin >> b;
    cout << "" << endl;
    cout << "Predkosc Wynosi:" << a / b << endl;
    break;
case 21:
    cout << "Podaj przemieszczenie: ";
    cin >> a;
    cout << "" << endl;
    cout << "Podaj przyrost Czasu: ";
    cin >> b;
    cout << "" << endl;
    cout << "Predkosc Chwilowa Wynosi Wynosi:" << a / b << endl;
    break;
case 22:
    cout << "Podaj przemieszczenie: ";
    cin >> a;
    cout << "" << endl;
    cout << "Podaj czas trwania ruchu(przyrost czasu): ";
    cin >> b;
    cout << "" << endl;
    cout << "Predkosc srednia wynosi:" << a / b << endl;
    break;
case 23:
    cout << "Podaj przyspieszenie: ";
    cin >> a;
    cout << "" << endl;
    cout << "Podaj jednostke przyspieszenia (bez sekund itp. tylko metry kilometry itp.)" << endl;
    char jednostka[ 100 ];
    cin >> jednostka;
    cout << "Podaj czas trwania ruchu: ";
    cin >> b;
    cout << "" << endl;
    cout << "Przebyta droga:" <<( a *( b * b ) ) / 2;
    cout << "" << jednostka;
    break;
    default:
    getch();
    return( 0 );
case 69:
    cout << "LOL Chcesz Wyjsc?" << endl;
    cout << "No to czesc " << wyraz << endl;
    cout << "Program CyrioCALC Zostal Wykonany Przez Cyria" << endl;
    cout << "*-*-*" << endl;
    cout << "Wcisnij dowolny Klawisz aby Wyjsc z Programu" << endl;
    getch(); // Program autorstwa Cyrio
    return( 0 ); // :) wiem ze fajny xD
} } while( 1 ); // kogzamy ;o

}
moglby ktoś mi pomóc i naprawić ten kod?
P-18584
Cyrio
Temat założony przez niniejszego użytkownika
» 2007-10-07 19:03:03
a) program pisałem sam.
b) zostane przy starej wersji
ta wersja którą tu pokazałem była próbą zrobienia
wielopoziomowego menu majacego usprawnic program :)
wkońcu to tylko program do liczenia zadań domowych ;d

c) topik mozna zamknac
xD
P-18585
« 1 »
  Strona 1 z 1