Kezdőoldal » Számítástechnika » Programozás » C++-ban a tömb helyeinek...

C++-ban a tömb helyeinek kiírása rendezés után, hogyan? Kód és leírás lenn

Figyelt kérdés

Szóval van egy tömböm (pl 3 elem) és annak 3 helye szóval

Mondjuk van a tömbbe a következő számok: 8 3 5 (példának okáért)

A 8-as az első elem (1.) , a 3 a (2. elem), 5 ös a 3. elem

Én azt szeretném hogy rendezze az elemeket és a beírási sorrendbe írja ki a sorrendet pl 3-as (2. elem)...

Tehát azt írja ki hogy 2 3 1

Példa lenn



Tehát bemenetem egy tömb 8 3 5

Rendezés pl növekkvő

Kimenet ez rendezve 3 5 8

LÉNYEG:

Kimenet a sorrendjük rendezés után: 2 3 1



///////////////////////

Ez a rossz kimenet:

A programom ezt írja ki 2 1 2


KÓD:

#include <iostream>


using namespace std;


int main()

{

setlocale(LC_ALL,"hun");

int a;


cout << "Hány elemű a tömb?" << endl;

cin >> a;


int t[a];

for (int i=0; i<a; i++)

{

cout << "Add meg a" << i+1 << ". elemet! " << endl;

cin >> t[i];

}


cout << "A tömb elemei: " << endl;

{

for (int i=0; i<a; i++)

cout << t[i] << " ";

}


//A feldat folyatása


int hely[10000];

cout << "helye tomb nelkül " << endl;

{

for (int i=1; i<a+1; i++)

cout << i << " ";

}


cout << endl;

for ( int i=1; i<a+1; i++)

{

hely[i]=i;


}

// A hiba itt lehet nem tudom a helyhez rakni a számokat

///////////////////////////////////////////////////////////////////////

//Helyek kiírása:

cout << "helye tömbbel" << endl;

for (int i=1; i<a+1; i++)

{

cout << hely[i] << endl;

}


//Rendezés

int x,y;

cout << "\nRENDEZES----------------------"<< endl;

int i, j;

for (i=0;i<a;i++)

{ for (j=i+1;j<a;j++)

{

if (t[i]> t[j])

{

x=t[i];

t[i]=t[j];

t[j]=x;

y=hely[i];

hely[i]=hely[j];

hely[j]=y;

}

}


}

for (i=0;i<a;i++)

{

cout << t[i] << " : " << hely[i] << " " << endl;

}



return 0;

}



2017. nov. 25. 12:50
 1/4 A kérdező kommentje:

Tehát az lenne a kérés hogy hogyan lehet megcsinálni hogy a kimenete ezt írja ki: 2 3 1

E helyett : 1 2 3 --> ez a rossz kimenetem

2017. nov. 25. 12:58
 2/4 anonim ***** válasza:
A programod működik nálam, és én sem látok olyan hibát a kódban, ami befolyásolja a végeredményt.
2017. nov. 25. 13:02
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
Legfeljebb annyi, hogy az utolsó kiíratásnál nem tolod el eggyel az értékeket, így 0-tól írja a indexeket.
2017. nov. 25. 13:04
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:

Köszönöm szépen a válaszokat , ment a zöld pacsi :)

A hobám az volt hogy hely[i]+1

nem toltam el +1 el

köszi :)

2017. nov. 25. 14:18

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!