URGENT DAU COROANA, DE LUCRAT IN C++
Problema 1: În fișierul note.in pe prima linie este memorat un număr natural
n (n<100) iar pe a doua linie un sir de n numere întregi
reprezentând notele a n elevi la extemporalul de matematică.
Realizați programul care afișează in fișierul note.out
următoarele:
Câte note mai mici ca 5 au fost obținute
Care este media aritmetică a notelor peste 5;
Câte note de 7 au fost obținute;
Care este cea mai mare notă
Problema 2: În fișierul numere.in pe prima linie este memorat un număr
natural n (n<100) iar pe a doua linie un sir de n numere întregi.
Să se insereze suma între oricare două numere aflate pe poziții
consecutive și de parități diferite. Rezultatul se va afișa in
fișierul numere.out
Problema 3: In fișierul numere.in este memorat pe prima linie un număr
natural n (n<1000) iar pe a doua linie un sir de n numere reale. Să
se afișeze în fișierul ramas.out toate numerele din șirul citit
după ce au fost eliminate valorile egale cu media aritmetică a
numărului din stânga și dreapta.
Răspunsuri la întrebare
COROANA TE ROG!!!!!
1
#include<iostream>
#include<fstream>
using namespace std;
int main(){
int n, s=0, k=0, sub5=0, sapte=0, max=-1, x;
ifstream f("note.in");
f>>n;
for(int i=i;i<=n;i++){
f>>x;
if(x<5) sub5++;
if(x>5) s+=x, k++;
if(x==7) sapte++;
if(x>max) max=x;
}
f.close();
ofstream g("note.out");
g<<sub5<<' '<<(float)s/k<<' '<<sapte<<' '<<max;
g.close();
return 0;
}
2
#include<iostream>
#include<fstream>
using namespace std;
int main(){
int n, v[203];
ifstream f("numere.in");
f>>n;
for(int i=1;i<=n;i++) f>>v[i];
f.close();
for(int i=2;i<=n+1;i++) if(v[i]%2!=v[i+1]%2){n++; for(int j=n-1;j>=i;j--) v[j+1]=v[j]; v[i]=v[i-1]+v[i+1]; i++;}
ofstream g("numere.out");
for(int i=1;i<=n;i++) g<<v[i]<<' ';
g.close();
return 0;
}
3
#include<iostream>
using namespace std;
int main(){
int n, v[203];
cin>>n;
for(int i=1;i<=n;i++) cin>>v[i];
for(int i=2;i<=n+1;i++) if(v[i]=(v[i-1]+v[i+1])/2){for(int j=i;j<=n-1;j++) v[j-1]=v[j]; n--;}
for(int i=1;i<=n;i++) cout<<v[i]<<' ';
return 0;
}