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

[C++] Rysowanie w konsoli (graficzne przedstawianie wyników)

Ostatnio zmodyfikowano 2012-11-10 11:11
Autor Wiadomość
dzwigar
Temat założony przez niniejszego użytkownika
[C++] Rysowanie w konsoli (graficzne przedstawianie wyników)
» 2012-11-08 23:17:21
Nie wiem czy to jest grzeczne na tym forum pisanie posta pod postem,
ale zaryzykuje.
Oczywiście że jestem na etapie czytania kursu który jest na tym forum i staran się od razu coś
działać.
Na dole pozwoliłem sobie wklejić kod mojego piierwszego programu który oblicza obciążenia.

Proszę Was o sugestje jak moge mój wynik przedstawić graficznie w konsoli w okienku "Obciazenie na spir wynioslo"
 chodzi mi o narysowanie w pierwszym wyniku jednego prostokąta ,w drugim dwóch itd...
Proszę Was o wskazówkę.

C/C++
#include <iostream>
#include <string>
#include <conio.h>

using namespace std;


double wynik;
void spira();
void rure();
void wage();
void konsole();





int main()

{
   
   
    char spir;
   
    do
    {
       
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o  Kalkulator Obciazen na spira v. 1.0   o" << endl;
        cout << "                 o    by      Krzysztof Adamski           o" << endl;
        cout << "                 o      All rights reserved  :)           o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "" << endl;
        cout << "" << endl;
       
        cout << "1. Obliczenie obciazenia na spira " << "\n\n\n";
        cout << "2. Obliczenie obciazenia na rure " << "\n\n\n";
        cout << "3. Obiczenie przeciw wagi " << "\n\n\n";
        cout << "4. Obiczenie konsoli " << "\n\n\n";
        spir = _getch();
       
        switch( spir )
        {
           
        case 49: spira();
           
            break;
        case 50: rure();
            break;
        case 51: wage();
            break;
        case 52: konsole();
           
            break;
        }
       
        system( "cls" );
    }
   
    while( spir != 27 );
   
    system( "pause" );
    return 0;
   
   
   
}



void spira()

{
    double suma1; // wynik obciazenia
    double b; //szerokosc
    double l; //dlugosc
    double h; // wysokosc
    char spir;
    int f; // ilosc fagow ( pol )
    int k; // klasa rusztowania
   
   
   
   
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o     Kalkulator obciazenia na spir      o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "" << endl;
    cout << "" << endl;
   
   
    system( "cls" );
   
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o    Klasa rusztowania ktore obiczsz     o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "" << endl;
    cout << "" << endl;
   
    cout << "  Klasa rusztowania :" << endl;
    cin >> k;
   
    system( "cls" );
   
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o  Jlosc pol rusztowania obciazajacych   o" << endl;
    cout << "                 o           spira obliczanego            o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 o                                        o" << endl;
    cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
    cout << "" << endl;
    cout << "" << endl;
   
    cout << "1. Jeden FAG na spira   :" << "\n\n\n";
    cout << "2. Dwa FAGI na spira    :" << "\n\n\n";
    cout << "3. Trzy FAGI na spira   :" << "\n\n\n";
    cout << "4. Cztery FAGI na spira :" << "\n\n\n";
    cin >> f;
    system( "cls" );
   
    double tab[ 4 ];
    tab[ 0 ] = 0;
    tab[ 1 ] = 0;
    tab[ 2 ] = 0;
    tab[ 3 ] = 0;
   
    for( int i = 0; i < f; i++ )
   
   
   
    {
       
       
       
        if( k == 1 ) //klasa pierwsza
       
        {
            system( "cls" );
           
            cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
            cout << "                 o                                        o" << endl;
            cout << "                 o      Wymiary pola rusztowania          o" << endl;
            cout << "                 o         obciazajacego spir             o" << endl;
            cout << "                 o                                        o" << endl;
            cout << "                 o                                        o" << endl;
            cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
            cout << "" << endl;
            cout << "" << endl;
           
            cout << " Klasa pierwsza rusztowania" << endl;
            cout << "" << endl;
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
           
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 0.75 * l * b ) / 4;
            cout << a1 << "\n";
            double b1x3 =( 1.5 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b1x3 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
           
            if( a1 > b1x3 && a1 > c1x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( b1x3 > a1 && b1x3 > c1x6 )
                 tab[ i ] =( b1x3 + egenvekt );
           
            cout << tab[ i ] << "\n";
            system( "pause" );
            system( "cls" );
           
        }
        if( k == 2 ) //klasa druga
       
        {
            system( "cls" );
            cout << " Klasa druga rusztowania" << endl;
            cout << "" << endl;
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
           
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 1.5 * l * b ) / 4;
            cout << a1 << "\n";
            double b1x3 =( 1.5 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b1x3 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
           
            if( a1 > b1x3 && a1 > c1x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( b1x3 > a1 && b1x3 > c1x6 )
                 tab[ i ] =( b1x3 + egenvekt );
           
            cout << tab[ i ] << "\n";
           
            system( "pause" );
            system( "cls" );
        }
        if( k == 3 ) //klasa trzecia
       
        {
            system( "cls" );
            cout << " Klasa trzecia rusztowania" << endl;
            cout << "" << endl;
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
           
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 2 * l * b ) / 4;
            cout << a1 << "\n";
            double b1x3 =( 1.5 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b1x3 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
           
            if( a1 > b1x3 && a1 > c1x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( b1x3 > a1 && b1x3 > c1x6 )
                 tab[ i ] =( b1x3 + egenvekt );
           
            cout << tab[ i ] << "\n";
           
            system( "pause" );
            system( "cls" );
        }
        if( k == 4 ) //Klasa czwarta
       
        {
            system( "cls" );
            cout << " Klasa czwarta rusztowania" << endl;
            cout << "" << endl;
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
           
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 3 * l * b ) / 4;
            cout << a1 << "\n";
            double b4x6 =( 3 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b4x6 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
            double d4 =( 5 * l * b * 0.4 * 0.8 ) / 2;
            cout << d4 << "\n";
           
            if( a1 > d4 && a1 > b4x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( d4 > a1 && d4 > b4x6 )
                 tab[ i ] =( d4 + egenvekt );
           
            cout << tab[ i ] << "\n";
           
            system( "pause" );
            system( "cls" );
        }
        if( k == 5 ) //Klasa piata
       
        {
            system( "cls" );
            cout << " Klasa piata rusztowania" << endl;
            cout << "" << endl;
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 4.5 * l * b ) / 4;
            cout << a1 << "\n";
            double b4x6 =( 3 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b4x6 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
            double d5 =( 7.5 * l * b * 0.4 * 0.8 ) / 2;
            cout << d5 << "\n";
           
            if( a1 > d5 && a1 > b4x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( d5 > a1 && d5 > b4x6 )
                 tab[ i ] =( d5 + egenvekt );
           
            cout << tab[ i ] << "\n";
           
            system( "pause" );
            system( "cls" );
        }
        if( k == 6 ) //Klasa szosta
       
        {
            system( "cls" );
            cout << " Klasa szosta rusztowania " << endl;
            cout << "" << endl;
           
            cout << "Podaj dlugosc pola(Fag " << i + 1 << "): " << endl;
            cin >> l;
            cout << "Podaj szerokosc pola (Fag " << i + 1 << "): " << endl;
            cin >> b;
            cout << "Podaj wysokosc pola(Fag " << i + 1 << "): " << endl;
            cin >> h;
           
            double egenvekt =(( l * b * h * 0.13 ) / 4 ); //egenvekt stala (waga rusztowania)
            cout << egenvekt << "\n";
            double a1 =( 6 * l * b ) / 4;
            cout << a1 << "\n";
            double b4x6 =( 3 *(( l - 0.25 ) / l ) *(( b - 0.25 ) / b ) );
            cout << b4x6 << "\n";
            double c1x6 =( 1 *(( l - 0.1 ) / l ) *(( b - 0.1 ) / b ) );
            cout << c1x6 << "\n";
            double d6 =( 10 * l * b * 0.5 * 0.75 ) / 2;
            cout << d6 << "\n";
           
            if( a1 > d6 && a1 > c1x6 )
                 tab[ i ] =( a1 + egenvekt );
            else if( d6 > a1 && b4x6 > c1x6 )
                 tab[ i ] =( d6 + egenvekt );
           
            cout << tab[ i ] << "\n";
           
            system( "pause" );
            system( "cls" );
        }
    }
   
    suma1 = tab[ 0 ] + tab[ 1 ] + tab[ 2 ] + tab[ 3 ];
   
   
   
   
    if(( tab[ 0 ] > 0 && tab[ 1 ] == 0 ) )
   
    {
        cout << "                 ooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "                 1                                        o" << endl;
        cout << "                 o      Obciazenie na spir wynioslo       o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                                " << suma1 << " kN          " << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
        system( "pause" );
        system( "cls" );
       
    }
   
   
    if( tab[ 1 ] > 0 && tab[ 2 ] == 0 )
   
   
    {
       
       
        cout << "                 ooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "                 2                                       o" << endl;
        cout << "                 o      Obciazenie na spir wynioslo       o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                                " << suma1 << " kN          " << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
       
        system( "pause" );
        system( "cls" );
    }
   
    if( tab[ 2 ] > 0 && tab[ 3 ] == 0 )
   
    {
       
       
       
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "                 3                                        o" << endl;
        cout << "                 o      Obciazenie na spir wynioslo       o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                                " << suma1 << " kN          " << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
       
        system( "pause" );
        system( "cls" );
       
    }
    if( tab[ 3 ] > 0 )
   
    {
       
       
       
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
        cout << "                 4                                        o" << endl;
        cout << "                 o      Obciazenie na spir wynioslo       o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                                " << suma1 << " kN          " << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 o                                        o" << endl;
        cout << "                 oooooooooooooooooooooooooooooooooooooooooo" << endl;
       
        system( "pause" );
        system( "cls" );
    }
   
   
   
}

void rure()
{
    system( "cls" );
    cout << "" << endl;
    cout << "" << endl;
    cout << "              Opcja dostepna w nastepnej wersji  :) " << endl;
    cout << "" << endl;
    cout << "" << endl;
    system( "pause" );
    system( "cls" );
}
void wage()
{
    system( "cls" );
    cout << "" << endl;
    cout << "" << endl;
    cout << "              Opcja dostepna w nastepnej wersji  :) " << endl;
    cout << "" << endl;
    cout << "" << endl;
    system( "pause" );
    system( "cls" );
}
void konsole()
{
   
    system( "cls" );
    cout << "" << endl;
    cout << "" << endl;
    cout << "              Opcja dostepna w nastepnej wersji  :) " << endl;
    cout << "" << endl;
    cout << "" << endl;
    system( "pause" );
    system( "cls" );
   
}
P-68871
akwes
» 2012-11-08 23:22:15
Używaj tagów [cpp] tu kod [/cpp]. Tym razem poprawiłem Twój post, teraz musisz mu nadać jeszcze jakiś temat.
P-68872
crash
» 2012-11-10 10:59:30

w drugim dwuch itd...

Ściągnij w miarę nową wersję przeglądarki internetowej obsługującą język polski.

Konsola nie jest od rysowania, to tylko czarne pudełko na biały tekst, przy odrobinie kombinatorstwa można te kolory zmieniać. Generalnie od wykresów i wszelkiej maści grafiki są odpowiednie środowiska. Qt, wxWidget, Borland C++, albo stricte graficzne SDL, SFML, Allegro itp.
P-68916
jsc
» 2012-11-10 11:11:55
przy odrobinie kombinatorstwa można te kolory zmieniać.

Widziałem Nethacka i wiem, że można dużo więcej. A autorowi tematu zalecam bibliotekę NCurses
P-68917
« 1 »
  Strona 1 z 1