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

Funkcja powrotu Switch

0 głosów
444 wizyt
pytanie zadane 29 kwietnia 2016 w C i C++ przez Andrzej Piotr Nowak Nowicjusz (140 p.)

Witam,

Jestem laikiem w C++ i Code;Blocks i nie mogę zamieścić funkcji powrotu do "menu" po wpisaniu analiz surowców w program. Jakbyś ktoś mógł jeszcze poprawić to i owo oraz wskazać błędy. 

Dziękuje 

 

#include <iostream>
#include <fstream>

using namespace std;

float x,y;
int wybor;
int ana_mapp;
int ana_mapn;
int ana_mocz;
int ana_sp;
int ana_kcl;

int main()
{

   cout << "Witaj w analizatorze ver 1.0";

       cout<<endl;

    cout << "MENU GLOWNE" ;
    cout<<endl;

    cout <<"1. Korekty" << endl;
    cout <<"2. Aktualizuj analizy surowcow" << endl;

    cout << "wybierz:" << endl;
    cin >> wybor;

    switch (wybor)
    {case 2:{cout  <<"Podaj analize N w Mapie: "; cin>> ana_mapn;
    cout  <<"Podaj analize P2O5 w Mapie: "; cin>> ana_mapp;
    cout  <<"Podaj analize N w Moczniku: "; cin>> ana_mocz;
    cout  <<"Podaj analize N w Siarczanie Amonu: "; cin>> ana_sp;
    cout  <<"Podaj analize K2O w KCL/K2SO4: "; cin>> ana_kcl;

    fstream plik;
    plik.open("analizy.txt",ios::out);

    plik<<ana_mapn<<endl;
    plik<<ana_mapp<<endl;
    plik<<ana_mocz<<endl;
    plik<<ana_sp<<endl;
    plik<<ana_kcl<<endl;

    plik.close();
    }

    }





        return 0;
}

 

3 odpowiedzi

0 głosów
odpowiedź 29 kwietnia 2016 przez Patryk Krajewski Nałogowiec (26,170 p.)
Jest taka instrukcja wracająca do danego miejsca w programie, ale lepiej ci o niej nie będe mówił :D. Spróbuj użyć pętli: https://www.youtube.com/watch?v=y6GOYVTVvqo
1
komentarz 29 kwietnia 2016 przez Konrad Nabożny Stary wyjadacz (13,480 p.)

Dobry pomysł, lepiej o niej nie wspominaj laugh

0 głosów
odpowiedź 29 kwietnia 2016 przez Fenix Nałogowiec (26,750 p.)
Nie ma funkcji powrotu, (chyba że uznać goto jako taką) Zawiń tego case w pętle, wtedy po wykonywanym case, bedzie Ci wracac spowrotem do 'menu'.
komentarz 29 kwietnia 2016 przez Andrzej Piotr Nowak Nowicjusz (140 p.)
I właśnie z tym mam problem
0 głosów
odpowiedź 29 kwietnia 2016 przez TheFeniks Gaduła (4,690 p.)
edycja 29 kwietnia 2016 przez TheFeniks

Możesz to zrobić tak:

Więc tak robisz sobie zmienną typu bool:

bool petla=true;

A potem robisz pętle while z tą zmienną:

while( petla )
{
  
  //Kod  
  //Kod
  
} 

Pętla mówi nam:powtarzaj dopóki prawdą jest że zmienna petla ma wartość true.

Jak przerwać pętle ?

Bardzo prosto poprostu przypisujesz wartość false do zmiennej petla.

petla=false;

A i jeszcze nie rób zmiennych globalnych ;)

Jak ? Deklaruje je w main()

int main()
{
 float x,y;
 int wybor;
 int ana_mapp;
 int ana_mapn;
 int ana_mocz;
 int ana_sp;
 int ana_kcl;

 //Resza kodu
}

Pozdrawiam ! :)

Podobne pytania

0 głosów
3 odpowiedzi 1,009 wizyt
pytanie zadane 27 sierpnia 2016 w C i C++ przez KURKSON Nowicjusz (120 p.)
0 głosów
1 odpowiedź 480 wizyt
pytanie zadane 8 grudnia 2018 w C i C++ przez Dani3l Bywalec (2,160 p.)
0 głosów
3 odpowiedzi 1,220 wizyt

93,771 zapytań

142,731 odpowiedzi

323,383 komentarzy

63,372 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...