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

DEV-C++ Działanie programu na innym komputerze

Ostatnio zmodyfikowano 2014-02-08 23:05
Autor Wiadomość
Robek94
Temat założony przez niniejszego użytkownika
DEV-C++ Działanie programu na innym komputerze
» 2014-02-07 14:32:50
Program na innym komputerze włącza się, lecz po wciśnięciu klawisza od razu się wyłącza bez komunikatu.
W Dev-C++ 5.6.0 utworzyłem plik *.cpp wybrałem BASIC konsolowa aplikacja (MS-DOM) C++.
W programie mam ustawione: MinGW GCC 4.8.1 32bit release
System: win7 32bit.

C/C++
#include <iostream>
#include <cstdlib>
#include <windows.h>
#include <math.h>

using namespace std;

int main()
{
    HANDLE hOut;
    hOut = GetStdHandle( STD_OUTPUT_HANDLE );
   
    int wybor, liczba, liczba2, liczba3, liczba4, liczba5, koniec;
   
    float a, b, c, h, sina, r, pi = 3.14, alfa; // --------------------------------------------------------------------------------------------------------------------------------DANE
   
    do
    {
        SetConsoleTextAttribute( hOut, BACKGROUND_RED ); //CZERWONE TLO
        cout << "KALKULATOR\n\n";
       
        SetConsoleTextAttribute( hOut, FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_RED ); //STANDARDOWY
       
        cout << "\n[1] - kalkulator" << "\n\nFigury:\n" << "\n[2] - kwadrat" << "\n[3] - prostokat" << "\n[4] - trojkat" << "\n[5] - kolo" << "\n\nPodaj numer: "; //-------------------------------------------------Co wybrac
        cin.clear();
        cin.sync();
        cin >> wybor;
       
        if( wybor > 10 )
       
        do
        {
            cout << "\n\nNumer niepoprawny.\n\nPodaj numer od 1 do 10: ";
            cin.clear();
            cin.sync();
            cin >> wybor;
        }
       
        while( wybor > 10 );
       
        switch( wybor )
        {
        case 1: // ------------------------------------------------------------------------------------------------------------------------------------Kalkulator [1]
            {
                cout << "\n[1] - dodawanie " << "\n[2] - odejmowanie" << "\n[3] - mnozenie" << "\n[4] - dzielenie" << "\n\nPodaj numer: ";
                cin.clear();
                cin.sync();
                cin >> liczba;
               
                if( liczba > 4 )
               
                do
                {
                    cout << "\n\nNumer niepoprawny.\nPodaj numer od 1 do 4: ";
                    cin.clear();
                    cin.sync();
                    cin >> liczba;
                }
               
                while( liczba > 4 );
               
                switch( liczba )
                {
                case 1: //--------------------------------------------------------------------------------------------------------------------------Dodawanie [1] [1]
                    {
                        cout << "\n*******************************************\n\t\tDODAWANIE\n*******************************************\n" << "\nPierwsza liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "\nWynik: " << a + b << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                   
                case 2: //---------------------------------------------------------------------------------------------------------------------------Odejmownaie [1] [2]
                    {
                        cout << "\n*******************************************\n\t\tODEJMOWANIE\n*******************************************\n" << "\nPierwsza liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "\nWynik: " << a - b << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                   
                case 3: //----------------------------------------------------------------------------------------------------------------------------Mnozenie [1] [3]
                    {
                        cout << "\n*******************************************\n\t\tMNOZENIE\n*******************************************\n" << "\nPierwsza liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "\nWynik: " << a * b << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                   
                case 4: //----------------------------------------------------------------------------------------------------------------------------Dzielenie [1] [4]
                    {
                        cout << "\n*******************************************\n\t\tDZIELENIE\n*******************************************\n" << "\nPierwsza liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                       
                        if( b == 0 )
                       
                        do
                        {
                            cout << "\nNie mozna dzielic przez 0. \nPodaj inna liczbe: ";
                            cin.clear();
                            cin.sync();
                            cin >> b;
                        }
                       
                        while( b == 0 );
                       
                        cout << "\nWynik: " << a / b << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                }
               
                break;
            }
           
        case 2: //----------------------------------------------------------------------------------------------------------------------------------------Kwadrat [2]
            {
                cout << "\n[1] - obwod kwadratu" << "\n[2] - pole kwadratu" << "\n[3] - przekatna kwadratu" << "\n\nPodaj numer: ";
                cin.clear();
                cin.sync();
                cin >> liczba2;
               
                if( liczba2 > 3 )
               
                do
                {
                    cout << "\n\nNumer niepoprawny.\nPodaj numer od 1 do 3: ";
                    cin.clear();
                    cin.sync();
                    cin >> liczba2;
                }
               
                while( liczba2 > 3 );
               
                switch( liczba2 )
                {
                case 1: //---------------------------------------------------------------------------------------------------------------------------------Obwod [2] [1]
                    {
                        cout << "\n*******************************************\n\t\tOBWOD KWADRATU\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " << 4 * a << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 2: //----------------------------------------------------------------------------------------------------------------------------------Pole [2] [2]
                    {
                        cout << "\n*******************************************\n\t\tPOLE KWADRATU\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " << a * a << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 3: //----------------------------------------------------------------------------------------------------------------------------------Przekatna [2] [3]
                    {
                        cout << "\n*******************************************\n\t\tPRZEKATNA KWADRATU\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " << a * sqrt( 2 ) << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                   
                }
               
                break;
            }
           
           
           
        case 3: //---------------------------------------------------------------------------------------------------------------------------------------Prostokat [3]
            {
                cout << "\n[1] - obwod prostokata" << "\n[2] - pole prostokata" << "\n\nPodaj numer: ";
                cin.clear();
                cin.sync();
                cin >> liczba3;
               
                if( liczba3 > 2 )
               
                do
                {
                    cout << "\n\nNumer niepoprawny.\nPodaj numer od 1 do 2: ";
                    cin.clear();
                    cin.sync();
                    cin >> liczba3;
                }
               
                while( liczba3 > 2 );
               
                switch( liczba3 )
                {
                case 1: //---------------------------------------------------------------------------------------------------------------------------------Obwod [3] [1]
                    {
                        cout << "\n*******************************************\n\t\tOBWOD PROSTOKATA\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "\nWynik: " <<( 2 * a ) +( 2 * b ) << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 2: //----------------------------------------------------------------------------------------------------------------------------------Pole [3] [2]
                    {
                        cout << "\n*******************************************\n\t\tPOLE PROSTOKATA\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Druga liczba: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "\nWynik: " << a * b << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                }
               
                break;
            }
           
           
        case 4: //---------------------------------------------------------------------------------------------------------------------------------------Trojkat [4]
            {
                cout << "\n[1] - obwod trojkata" << "\n[2] - pole trojkata " << "\n[3] - pole trojkata (kat alfa)" << "\n[4] - pole trojkata rownobocznego" << "\n[5] - wysokosc trojkata rownobocznego" << "\n\nPodaj numer: ";
                cin.clear();
                cin.sync();
                cin >> liczba4;
               
                if( liczba4 > 5 )
               
                do
                {
                    cout << "\n\nNumer niepoprawny.\nPodaj numer od 1 do 5: ";
                    cin.clear();
                    cin.sync();
                    cin >> liczba4;
                }
               
                while( liczba4 > 5 );
               
                switch( liczba4 )
                {
                case 1: //---------------------------------------------------------------------------------------------------------------------------------Obwod [4] [1]
                    {
                        cout << "\n*******************************************\n\t\tOBWOD TROJKATA\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Podaj b ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "Podaj c: ";
                        cin.clear();
                        cin.sync();
                        cin >> c;
                        cout << "\nWynik: " << a + b + c << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 2: //----------------------------------------------------------------------------------------------------------------------------------Pole1 [4] [2]
                    {
                        cout << "\n*******************************************\n\t\tPOLE TROJKATA\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Podaj h: ";
                        cin.clear();
                        cin.sync();
                        cin >> h;
                        cout << "\nWynik: " <<( a * h ) / 2 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 3: //----------------------------------------------------------------------------------------------------------------------------------Pole2 [4] [3]
                    {
                        cout << "\n*******************************************\n\t\tPOLE TROJKATA (KAT ALFA)\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "Podaj b: ";
                        cin.clear();
                        cin.sync();
                        cin >> b;
                        cout << "Podaj sin alfa: ";
                        cin.clear();
                        cin.sync();
                        cin >> sina;
                        cout << "\nWynik: " <<( a * b * sina ) / 2 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                   
                case 4: //----------------------------------------------------------------------------------------------------------------------------------Pole3 [4] [4]
                    {
                        cout << "\n*******************************************\n\t\tPOLE TROJKATA ROWNOBOCZNEGO\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " <<( a * a * sqrt( 3 ) ) / 4 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 5: //----------------------------------------------------------------------------------------------------------------------------------Wysokosc [4] [5]
                    {
                        cout << "\n*******************************************\n\t\tWYSOKOSC TROJKATA ROWNOBOCZNEGO\n*******************************************\n" << "\nPodaj a: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " <<( a * sqrt( 3 ) ) / 2 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                }
               
                break;
            }
           
        case 5: //---------------------------------------------------------------------------------------------------------------------------------------Kolo [5]
            {
                cout << "\n[1] - obwod kola" << "\n[2] - pole kola" << "\n[3] - dlugosc luku" << "\n[4] - pole wycinka" << "\n\nPodaj numer: ";
                cin.clear();
                cin.sync();
                cin >> liczba5;
               
                if( liczba5 > 4 )
               
                do
                {
                    cout << "\n\nNumer niepoprawny.\nPodaj numer od 1 do 4: ";
                    cin.clear();
                    cin.sync();
                    cin >> liczba5;
                }
               
                while( liczba5 > 4 );
               
                switch( liczba5 )
                {
                case 1: //---------------------------------------------------------------------------------------------------------------------------------Obwod [5] [1]
                    {
                        cout << "\n*******************************************\n\t\tOBWOD KOLA\n*******************************************\n" << "\nPodaj r: ";
                        cin.clear();
                        cin.sync();
                        cin >> r;
                        cout << "\nWynik: " << 2 * pi * r << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 2: //----------------------------------------------------------------------------------------------------------------------------------Pole [5] [2]
                    {
                        cout << "\n*******************************************\n\t\tPOLE KOLA\n*******************************************\n" << "\nPodaj r: ";
                        cin.clear();
                        cin.sync();
                        cin >> a;
                        cout << "\nWynik: " << pi * r * r << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 3: //---------------------------------------------------------------------------------------------------------------------------------Obwod [5] [3]
                    {
                        cout << "\n*******************************************\n\t\tDLUGOSC LUKU\n*******************************************\n" << "\nPodaj r: ";
                        cin.clear();
                        cin.sync();
                        cin >> r;
                        cout << "Podaj kat alfa: ";
                        cin.clear();
                        cin.sync();
                        cin >> alfa;
                        cout << "\nWynik: " <<( alfa * 2 * pi * r ) / 360 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                case 4: //----------------------------------------------------------------------------------------------------------------------------------Pole [5] [4]
                    {
                        cout << "\n*******************************************\n\t\tPOLE WYCINKA\n*******************************************\n" << "\nPodaj r: ";
                        cin.clear();
                        cin.sync();
                        cin >> r;
                        cout << "Podaj kat alfa: ";
                        cin.clear();
                        cin.sync();
                        cin >> alfa;
                        cout << "\nWynik: " <<( alfa * pi * r * r ) / 360 << "\n-------------------------------------------\n\n\n";
                        break;
                    }
                   
                }
               
                break;
            }
           
        } // NOWA FIGURA PRZED TYM
       
        cout << "[1] - licz dalej\n[2] - zakoncz \n\nCo wybierasz?: ";
        cin >> koniec;
        system( "cls" );
    }
   
    while( koniec != 2 );
   
    return 0;
}
P-104169
MrPoxipol
» 2014-02-07 14:34:53
Podaj log kompilacji (Czyli to jak jest gcc wywoływane).
P-104170
Robek94
Temat założony przez niniejszego użytkownika
» 2014-02-07 14:51:21
Wykonywanie g++.exe...
g++.exe "C:\Users\Robek\Desktop\Projekt 0.5a.cpp" -o "C:\Users\Robek\Desktop\Projekt 0.5a.exe" -g3 -I"C:\Program Files\Dev-Cpp\MinGW32\include" -I"C:\Program Files\Dev-Cpp\MinGW32\mingw32\include" -I"C:\Program Files\Dev-Cpp\MinGW32\lib\gcc\mingw32\4.8.1\include" -I"C:\Program Files\Dev-Cpp\MinGW32\lib\gcc\mingw32\4.8.1\include\c++" -L"C:\Program Files\Dev-Cpp\MinGW32\lib" -L"C:\Program Files\Dev-Cpp\MinGW32\mingw32\lib" -static-libstdc++ -static-libgcc -g3
Compilation succeeded in 3,03 seconds
P-104172
MrPoxipol
» 2014-02-07 15:05:18
Kompiluj program w trybie Release.
P-104177
Robek94
Temat założony przez niniejszego użytkownika
» 2014-02-07 15:32:12
To jest ten tryb? MinGW GCC 4.8.1 32bit release. Są jeszcze debug i profiling

W relase właśnie nie działa

W opcjach kompilatora mam zaznaczone: "Dodaj te polecenia do wiersza poleceń konsolidatora: -static-libstdc++ -static-libgcc"
P-104180
MrPoxipol
» 2014-02-07 15:37:26
Jeśli możesz to spróbuj zbudować z poziomu konsoli poleceniem:
g++ plik.cpp -oprogram -O2

Jak nie masz GCC w zmiennej systemowej PATH to dodaj (jeśli nie wiesz jak to zrobić, znajdziesz informacje w google).
P-104181
Robek94
Temat założony przez niniejszego użytkownika
» 2014-02-08 14:42:40
Wyrzuciłem Devc++, teraz mam CodeBlocks

Poprawiło się tylko, ze wywala do pulpitu, gdy policzy się działanie.
P-104243
MrPoxipol
» 2014-02-08 23:05:35
Bo nie pauzujesz programu.
P-104284
« 1 »
  Strona 1 z 1