Tanárom küldött rendezéseket C++ -ban de nem fut le. Miért nem?
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
void BuborekRendezes(int* szamok, int N){
for (int j=0;j<N;j++){
for (int i=0;i<N-1;i++){
if (szamok[i]>szamok[i+1]){
int s = szamok[i];
szamok[i] = szamok[i+1];
szamok[i+1] = s;
}
}
}
}
void EgyszeruCseresRendezes(int* szamok, int N){
for (int j=0;j<N;j++){
for (int i=j;i<N;i++){
if (szamok[j]>szamok[i]){
int s = szamok[j];
szamok[j] = szamok[i];
szamok[i] = s;
}
}
}
}
void BeillesztesesRendezes(int* szamok, int N){
for (int ezmarrendezvevan = 1; ezmarrendezvevan<N; ezmarrendezvevan++)
{
int szamhelye = ezmarrendezvevan;
while (szamok[szamhelye] < szamok[szamhelye-1]){
int tmp = szamok[szamhelye-1];
szamok[szamhelye-1] = szamok[szamhelye];
szamok[szamhelye] = tmp;
szamhelye--;
if (szamhelye==0) break;
}
}
}
void MinimumKivalasztasosRendezes(int* szamok, int N){
for (int j=0;j<N-1;j++){
int minimumhely = j;
for (int i=j+1;i<N;i++){
if (szamok[i]<szamok[minimumhely])
minimumhely = i;
}
int s = szamok[j];
szamok[j] = szamok[minimumhely];
szamok[minimumhely] = s;
}
}
int main(){
//system("format c:");
srand(time(0));
int N = 1000; //tömb elemeinek száma
int k = 10000; //teszesetek száma
int randomMax = 10000; //számok generálása 1 és randomMax között
int szamok[N];
//-------------------------------------------------------------------------------
int ekkorindultunk = time(0);
for (int i=0;i<k;i++){
for (int j=0;j<N;j++){
szamok[j] = rand()%randomMax+1;
}
BuborekRendezes(szamok, N);
}
int ekkorfejeztukbe = time(0);
cout << "Buborekrendezes futasanak ideje: " << (ekkorfejeztukbe-ekkorindultunk) << endl;
//-------------------------------------------------------------------------------
ekkorindultunk = time(0);
for (int i=0;i<k;i++){
for (int j=0;j<N;j++){
szamok[j] = rand()%randomMax+1;
}
EgyszeruCseresRendezes(szamok, N);
}
ekkorfejeztukbe = time(0);
cout << "Egyszeru cseres rendezes futasanak ideje: " << (ekkorfejeztukbe-ekkorindultunk) << endl;
//-------------------------------------------------------------------------------
ekkorindultunk = time(0);
for (int i=0;i<k;i++){
for (int j=0;j<N;j++){
szamok[j] = rand()%randomMax+1;
}
BeillesztesesRendezes(szamok, N);
}
ekkorfejeztukbe = time(0);
cout << "Beilleszteses rendezes futasanak ideje: " << (ekkorfejeztukbe-ekkorindultunk) << endl;
//-------------------------------------------------------------------------------
ekkorindultunk = time(0);
for (int i=0;i<k;i++){
for (int j=0;j<N;j++){
szamok[j] = rand()%randomMax+1;
}
MinimumKivalasztasosRendezes(szamok, N);
}
ekkorfejeztukbe = time(0);
cout << "Minimumkivalasztasos rendezes futasanak ideje: " << (ekkorfejeztukbe-ekkorindultunk) << endl;
//-------------------------------------------------------------------------------
return 0;
}










Linux, de ez a program szempontjából nyilván mindegy.





tabaki-t alátámasztva - tényleg lefut:
Ugyancsak Linux, Sublime Text
$ g++ --version
g++ (Ubuntu 4.8.4-2ubuntu1~14.04.1) 4.8.4
De itt is: http://goo(pont)gl/36N8Bk
Jó lenne tudni milyen fordító, milyen paraméterekkel.





Windows-Visual Studio
Nem fut le
Először a mainben az int szamok[n]-nel volt baja, majd az includeokkal





int szamok[n]
Ez nem a C++ standard része, hanem compiler extension azért nem fordul le mindegyikkel.





# 7/9 Időpont ma 06:25
Visual Studionál kell egy #include "stdafx.h" sor is.
# 8/9 Időpont ma 06:48
A szabvány csak azt mondja ki, hogy a tömbök méretét fordítási időben tudni kell. Ez, a
int N = 1000; //tömb elemeinek száma
sorral megvalósult.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!