• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

zakończenie za pomocą przycisku

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
62 wizyt
pytanie zadane 24 listopada w C i C++ przez McSpektra Nowicjusz (140 p.)
edycja 24 listopada przez McSpektra

Hej. Mam tu taki prosty programik, który za zadanie określenie, w dużym skrócie myślowym, wartości trójkątów. Jak widać program zatrzymuje się na 3 sekundy i potem czyści konsole. Jak mogę zrobić, żeby po wciśnięciu dowolnego przycisku program leciał dalej?

Ps. Używam linuksa dlatego system("cls");

#include <iostream>
#include <math.h>
#include <stdlib.h>
#include <unistd.h>

using namespace std;

bool troj(int a, int b, int c){
    if(a == b || b == c){
        return false;
    }else{
        if(a+b > c && a+c > b && b+c > b){
            return true;
        }
    }
    return false;
}

bool trojpros(int a, int b, int c){

    a = pow(a, 2);
    b = pow(b, 2);
    c = pow(c,2);

    if(a+b == c || b+c == a || a+c == b){
        return true;
    }
    return false;

}
using namespace std;

int main(){
    int n=0, a=0, b=0, c=0;
    bool spr=false;
    bool running = true;

    while(running){
        cout << "Witaj w programie" << endl <<"Wybierz jedna z 3 opcji." << endl;
        cout << "1) Dodaj boki" << endl;

        if(a!=0 && b!=0 && c!=0){
                cout << "2) Sprawdz czy to trojkat" << endl;
        }

        if(spr==true){
                cout << "3) Sprawdz cz to trojkat prostokatny" << endl;
        }

        cout << "4) Wyjscie" << endl;
        cout << "Twoj wybor to: ";
        cin >> n;

        switch(n)
        {
        case 1:

            cout << "Wybrałeś opcje nr. 1" << endl;

            cout << "Podaj pierwsza dlugosc: " << endl;
            cin >> a;

            cout << "Podaj druga dlugosc: " << endl;
            cin >> b;

            cout << "Podaj trzecia dlugosc: " << endl;
            cin >> c;
            spr=false;
            system("clear");
            break;

        case 2:
            //cout << a << b << c;
            if(a!=0 && b!=0 && c!=0)
            {
                cout << "Wybrałeś opcje nr. 2" << endl;

                if(troj(a,b,c))
                {
                    cout << "Mozna zbudowac trojkat" << endl;
                    spr=true;
                }
                else
                {
                    cout << "Nie mozna zbudowac trojkata" << endl;
                    spr=false;
                }
                sleep(3);
                system("clear");
            }
            break;

        case 3:
            if(spr==true)
            {
                cout << "Wybrałeś opcje nr. 3" << endl;

                if(trojpros(a, b, c))
                {
                    cout << "Jest to prostokatny" << endl;
                }
                else
                {
                    cout << "Nie jest prostokatny" << endl;
                }
                //cout<<"ok";
                sleep(3);

                system("clear");
            }
            break;
        case 4:
            return 0;
        default:
            cout << "Wybrano zla opcje" << endl;
            return 0;
           }

        }
    }

 

komentarz 24 listopada przez VBService Ekspert (204,430 p.)
edycja 24 listopada przez VBService

Po uruchomieniu widać to

gdzie 3-a opcja? wink

Używam linuksa dlatego system("cls");

a w kodzie masz system("clear")  wink

komentarz 24 listopada przez VBService Ekspert (204,430 p.)
edycja 25 listopada przez VBService

Sprawdź, może nie

po wciśnięciu dowolnego przycisku

ale Enter-a

cout << "Nacisnij Enter aby kontynuowac ...";
cin.ignore();
while (getchar() != '\n');

lub

cout << "Nacisnij Enter aby kontynuowac ...";
cin.ignore();
cin.get();

Ciekawa biblioteka: ncurses [ 1 ] [ 2 ]

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 2,559 wizyt
pytanie zadane 6 lutego 2019 w C i C++ przez Thanat0s666 Nowicjusz (230 p.)
0 głosów
2 odpowiedzi 131 wizyt
pytanie zadane 17 listopada 2018 w PHP przez Mavimix Dyskutant (8,410 p.)
–3 głosów
8 odpowiedzi 294 wizyt
pytanie zadane 8 lipca 2015 w Offtop przez Pan Kulomb Pasjonat (18,630 p.)

89,759 zapytań

138,362 odpowiedzi

309,420 komentarzy

59,673 pasjonatów

Advent of Code 2022

Top 15 użytkowników

  1. 908p. - Argeento
  2. 877p. - nidomika
  3. 851p. - Michal Drewniak
  4. 848p. - Mikbac
  5. 846p. - rucin93
  6. 838p. - Łukasz Eckert
  7. 835p. - ssynowiec
  8. 822p. - TheLukaszNs
  9. 794p. - JMazurkiewicz
  10. 787p. - Hubert Chęciński
  11. 786p. - adrian17
  12. 760p. - Mawrok
  13. 756p. - overcq
  14. 752p. - Vinox
  15. 747p. - Fiji404
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...