online: 7; azi: 1359; total: 51814 Manual clasa a ix a - Implementarea structurilor de date - Fisiere

Manual clasa a IX a

Implementarea structurilor de date

Fisiere

Se citesc de la tastatură mai multe triplete de numere întregi ( a ,b,c ) care se scriu într -un fişier alfa.txt, câte o tripletă pe fiecare rând . Se citesc apoi din fişier aceste triplete de numere şi se analizează dacă ele reprezintă laturile unui triunghi şi se scrie pe un rând , în fişierul beta.txt, aria triunghiului , dacă ele reprezintă laturile unui triunghi , şi 0 dacă nu reprezintă laturile unui triunghi . Afişaţi apoi pe ecran , pe câte un rând , informații despre triunghiurile găsite : dimensiunile laturilor şi aria.
# include < iostream >
# include < fstream >
# include < cmath >
using namespace std ;
int main () {
ifstream in ( "alfa.txt" ) ;
ofstream out ( "beta.txt" ) ;
int a, b, c;
double p, aria;
while (in >> a >> b >> c) {
if (a + b > c && a + c > b && b + c > a) { // verificăm dacă sunt laturile unui triunghi
p = (a + b + c) / 2.0 ; // calculăm semiperimetrul
aria = sqrt (p * (p - a) * (p - b) * (p - c)); // calculăm aria
out << aria << '\n' ; // scriem aria în fișierul beta.txt
cout << "Triunghi cu laturile " << a << ", " << b << ", " << c << " si aria " << aria << '\n' ;
} else { // nu sunt laturile unui triunghi
out << 0 << '\n' ; // scriem 0 în fișierul beta.txt
cout << "Nu sunt laturile unui triunghi: " << a << ", " << b << ", " << c << '\n' ;
}
}
in. close ();
out. close ();
return 0 ;
}

Explicații: