Salut, am nevoie de o rezolvare la urmatoarea problema, daca se poate si explicata. Multumesc anticipat !Din fisierul numere.exe se citesc cel mult 30000 de numere, fiecare numar avand cel mult 9 cifre. Stiind ca in fisier sunt cel putin 2 numere de 2 cifre sa se determine cele mai mari 2 numere de 2 cifre si frecventa aparitiei lor in fisier.As dori sa fie in C++, de preferat sa ruleze in Codeblock.

1

Răspunsuri

2014-06-09T23:24:45+03:00
#include<iostream>
#include<fstream>
using namespace std;
int main(){
int v[100],poz=0,n,i,x,sortat,aux;
ifstream f("numere.in");
while(!f.eof()){
f>>x;
if(x>10 && x<99){
poz++;
v[poz]=x;
} }
n=poz;
do{ sortat=1;
for(i=1;i<n;i++)
if(v[i]>v[i+1]){
sortat=0;

aux=v[i];

v[i]=v[i+1];
v[i+1]=aux;
}}while(!sortat);

f.close();
cout<<v[n]<<" "<<v[n-1];

return 0;
}