W ramach powtórki wiadomości (algorytmy C++) prezentujemy program generujący 100 liczb z zakrsu 1-1000. Prezentowany program wykorzystuje gotową funkcję sort. Po wykonaniu sortowania program zapisuje dane do pliku.
#include<iostream>
#include<math.h>
#include<fstream>
#include<algorithm>
using namespace std;
main(){
//deklaracja tablicy - wartości z góry podane
int T[]={651,806,498,415,56,237,404,462,533,113,422,13,990,797,264,661,372,514,419,186,684,809,287,
315,811,925,40,78,81,463,14,905,835,417,317,487,494,686,329,999,345,25,862,947,738,246,864,848,515,
47,911,225,806,80,597,153,495,429,458,896,802,890,455,630,956,26,802,350,734,756,946,733,823,331,
716,635,409,461,805,104,408,7,801,187,886,135,659,31,794,274,853,104,553,391,98,549,542,315,715,757};
int z;
//wyznaczamy ilość elementów w tablicy
z=sizeof(T) / sizeof(int); //obliczenie ilosci elementow w tablicy
//sortowanie (rosnąco) tablicy - znajomość gotowej funkcji nie zwalnia nas z obowiązku znajomości poszczególnych metod sortujących poznanych na lekcja informatyki
sort( T , T+z );
//zapis uporządkowanych rosnąco liczb do pliku
ofstream zapis1("liczbyrosnaco.txt");
for(int i=0 ; i<z ; i++)
zapis1<<T[i]<<",";
zapis1.close();
//sorotwanie (malejąco)
sort( T , T+z , greater < int >() );
//zapis uporządkowanych malejąco liczb do pliku
ofstream zapis2("liczbymalejaco.txt");
for(int i=0 ; i<z ; i++)
zapis2<<T[i]<<",";
zapis2.close();
}
//THE END...