» »

c++

c++

Hatefild ::

#include "iostream.h"

void main()
{

	int a;


	cout vpisite:  ;
	cin>>a;


	int *polje=new int[a];


	int b;
	int t=0;
	int vsi_elementi=0;

	while(t mansi a)
	{
	cout"vpisi: ";
	cin>>b;
	polje[t]=b;
	t++;
	}

	for(int e=0;e manjsi a;e++)
	{
		cout" "polje[e];
	}




	delete polje;

}


sedaj me pa zanima kako bi lahko zbrisal pač element na kateremkoli indeksu, da bi pac vpisal neko stevilo in bi mi na tistem indeksu zbrisal cifro?


za odg. se zahvaljujem!
  • spremenil: darh ()

NoUse4AName ::

uporabi delete[] polje.
Lahko to naredis tako, da prestavis vsa stevila od tistega indeksa naprej za eno mesto v levo, ampak tako dobis v polju eno mesto na koncu katerega ne uporabljas.
Lahko pa tudi naredis novo polje, ki je za eno mesto manjse in prekopiras vse vrednosti starega polja v novo polje, razen tiste vrednosti katero hoces odstraniti.

Vesoljc ::

za take operacije je boljši seznam, recimo std::vector...

če pa hočeš to doseči s poljem, pa uporabi neko vrednost (recimo -1) kot indikator za prazen "kvadratek"...
Abnormal behavior of abnormal brain makes me normal...

OwcA ::

Za odvzemanje/dodajanje na naključnem mestu je bolj primeren std:deque
Drugače je daleč najbolj čista rešitev ta, ki ti jo je predlagal NoUse4AName, čeprav če nameravaš dodajati/brisati veliko elementov iz sredine bi se ti bolj splačalo narediti povezan seznam.
Otroška radovednost - gonilo napredka.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C#] Bisekcija

Oddelek: Programiranje
183280 (2652) b4d
»

[C++] Quick sort

Oddelek: Programiranje
81153 (1066) oslaj
»

[C++] dinamično 2d polje

Oddelek: Programiranje
143253 (3090) bozjak
»

c++ in linux/windows

Oddelek: Programiranje
121722 (1598) rapvirus
»

Bubble sort

Oddelek: Programiranje
71535 (1427) OwcA

Več podobnih tem