Kezdőoldal » Számítástechnika » Programozás » Tanárom küldött rendezéseket...

Tanárom küldött rendezéseket C++ -ban de nem fut le. Miért nem?

Figyelt kérdés

#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;

}


2016. febr. 26. 23:18
1 2
 1/13 anonim ***** válasza:
Miért, mit ír ki a fordító?
2016. febr. 26. 23:19
Hasznos számodra ez a válasz?
 2/13 A kérdező kommentje:
Basszus az int main()-ben a system("format c:"); NEM DIREKT van benne. Az osztálytársam hülyéskedett hogy írja be a tanár, ő meg beírta de mivel nem voltak rendszergazdai jogai nem formázta le. Elfelejtettem kitörölni mielőtt bemásoltam szóval nézzétek el.
2016. febr. 26. 23:21
 3/13 A kérdező kommentje:
Semmit nem ír. Elindítom az exe-t és semmi nem történik, csak megjelenik a fekete ablak de nem ír ki semmit.
2016. febr. 26. 23:22
 4/13 tabaki ***** válasza:
Vártál sokat? Nekem rendben lefut, ki is írja.
2016. febr. 26. 23:45
Hasznos számodra ez a válasz?
 5/13 tabaki ***** válasza:

[link]

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

2016. febr. 26. 23:48
Hasznos számodra ez a válasz?
 6/13 anonim ***** válasza:

tabaki-t alátámasztva - tényleg lefut:

[link]

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.

2016. febr. 27. 00:43
Hasznos számodra ez a válasz?
 7/13 anonim ***** válasza:

Windows-Visual Studio

Nem fut le

Először a mainben az int szamok[n]-nel volt baja, majd az includeokkal

2016. febr. 27. 06:25
Hasznos számodra ez a válasz?
 8/13 anonim ***** válasza:
43%

int szamok[n]


Ez nem a C++ standard része, hanem compiler extension azért nem fordul le mindegyikkel.

2016. febr. 27. 06:48
Hasznos számodra ez a válasz?
 9/13 A kérdező kommentje:
Visual Studio-n próbáltam, most letöltöttem a CodeBlocks-ot és ott lefut, ha sokat várok.
2016. febr. 27. 08:16
 10/13 anonim ***** válasza:

# 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.

2016. febr. 27. 10:06
Hasznos számodra ez a válasz?
1 2

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!