Se citesc de la tastatură datele referitoare la m elevi: nume, prenume, numărul de membri ai
familiei şi venitul net lunar al familiei. Un elev primeşte bursa dacă venitul pe fiecare membru al
familiei venitul nu depăşeşte o valoare limită L. Realizaţi un program care afişează elevii ce nu au
dreptul la bursă, în ordine alfabetică.
Răspunsuri la întrebare
#include <iostream>
#include <string.h>
using namespace std;
int M; // numarul de elevi
int L; // valoare limita pentru venit
struct Detalii_membru {
char Nume[100];
char Prenume[100];
int Nr_membri;
int Venit_lunar;
int Val_min;
};
Detalii_membru X[1001], aux;
void Citire (){
cout << "Numarul de elevi : "; cin >> M;
cout << "Venitul maxim pentru fiecare membru al familie :"; cin >> L;
for (int i = 1; i <= M; i ++){
cout << "Nume elev : "; cin >> X[i].Nume;
cout << "Prenume elev : "; cin >> X[i].Prenume;
cout << "Numar de membri ai familie : "; cin >> X[i].Nr_membri;
cout << "Venitul net lunar al familiei : "; cin >> X[i].Venit_lunar;
X[i].Val_min = (X[i].Venit_lunar / X[i].Nr_membri); // Valoare pentru fiecare familie
}
}
void Rezolvare (){
for (int i = 1; i <= M - 1; i ++)
for (int j = i + 1; j <= M; j ++)
if (strcmp(X[i].Nume, X[j].Nume) > 0){
aux = X[i];
X[i] = X[j];
X[j] = aux;
}
for (int i = 1; i <= M ; i ++)
if (X[i].Val_min >= L)
cout << X[i].Nume << " " << X[i].Prenume << "\n";
}
int main()
{
Citire();
Rezolvare();
return 0;
}
Daca ai intrebari le astept ;)