Witam.
Mam takie zadanie:
"Napisz program, wykorzystujący nieskończoną pętlę while do wczytywania słów ze standardowego wejścia (cin) do łańcucha (string). Będzie to nieskończona pętla while, którą potem przerwiesz (i opuścisz program) za pomoca instrukcji break. Przepisz każdemu przeczytanemu słowu wartość całkowitą używając do tego sekwencji instrukcji if, a następnie zastosuj instrukcję switch, wykorzystującą tę wartość w charakterze selektora. W każdym przypadku case, wydrukuje coś sensownego. Musisz dokonać wyboru interesujacych słow i ich znaczenia a takze zdecydowac jakie slowo bedzie poleceniem zakonczenia programu. Przetestuj program, przekierowujac na jego standardowe wejscie plik.
Rozwiązałem całe zadanie tak:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
string input;
int wart;
while(true)
{
cout << "Wpisz slowo: ";
cin >> input;
if(input=="A")
wart = 1;
if(input=="K")
wart = 2;
if(input=="exit")
wart = 3;
//przekierowanie pliku na standardowy strumien wejscia
if(input=="file")
{
ifstream in("example.txt");
while(getline(in,input));
if("example.txt")
wart = 4;
}
switch(wart)
{
case 1:
cout << "Wpisales A" << endl;
continue;
case 2:
cout << "Wpisales K" << endl;
continue;
case 3:
cout << "Wyjscie...";
break; //case 3
case 4:
cout << "Przekierowano plik!" << endl;
continue;
default:
cout << "Wrong!" << endl;
continue;
}
break;
}//while
}
No i program działa... kompiluje się bez ostrzeżeń jednak nie jestem pewny co do tego przekierowania pliku.
Bądźcie wyrozumiali i powiedzcie jak to mam zmienić... :)
Pozdrawiam :)