Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Mezina familiei, Merida BigNine

The Tattooist of Auschwitz (2024)

Se poate recupera numar de telefo...

Upgrade de la MacBook Pro M1 cu 8...
 Ce tip de monitor am nevoie pt of...

Resoftare camera supraveghere

Cu ce va aparati de cainii agresi...

Nu imi platiti coletul cu cardul ...
 Exista vreun plan de terorizare p...

Schimbare adresa DNS IPv4 pe rout...

Recomandare Barebone

Monede JO 2024
 Suprasolicitare sistem electric

CIV auto import

Mutare in MOZAMBIC - pareri, expe...

Scoatere antifurt airtag de pe ha...
 

sortare vector cu ajutorul STL

- - - - -
  • Please log in to reply
20 replies to this topic

#1
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
Trebuie sa folosesc STL ca sa incarc cu valori un vector si apoi sa il sortez si sa il afisez.

#include<iostream>
using namespace std;
vector<int> vec;
int main()
{
	int a,n;
	cin>>n;
	for(int i = 0; i < n; i++){
		cin>>a;
		vec.push_back(a);
  }
vector <int>::iterator begining=vec.begin();
vector <int>::iterator ending =vec.end();
sort(begining,ending);
  for(vector <int>::iterator itr=begining; itr!=ending ;++itr) cout<<*itr<<'\x0';
return 0;
}


pe linia cu vector<int> vec imi zice : expected constructor, destructor, or type conversion before '<' token si dupa alte vreo 13 erori care cred ca pornesc de la asta...

#2
Rhesus

Rhesus

    Senior Member

  • Grup: Senior Members
  • Posts: 2,884
  • Înscris: 22.04.2014
<include vector>  la inceput. Trebuie sa incluzi fisierul vector, pt. definitiile tipurilor(claselor) respective.

Poti folosi direct sort(vec.begin(), vec.end()).
Nu mai trebuie sa declari si definesti obiectele begining si ending ... nu are sens.

Edited by Rhesus, 29 July 2015 - 20:11.


#3
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
mai am o eroare:  'sort' was not declared in this scope|


edit: gata , merge . ai uitat sa zici de #include<algorithm>

mersi frumos .

Edited by VladBtz, 29 July 2015 - 20:33.


#4
Redount2k9

Redount2k9

    Member

  • Grup: Members
  • Posts: 374
  • Înscris: 13.07.2010
Citeste aici: http://www.cplusplus...algorithm/sort/

#5
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
ok , mersi ,eu ma uitam la asta si d-aia... [ https://www.youtube-nocookie.com/embed/ltBdTiRgSaw?feature=oembed - Pentru incarcare in pagina (embed) Click aici ]

bool myfunction (int i,int j) { return (i<j); }  adica daca i <j rezulta 0 (true) si lasa in pace , iar daca nu e , e false si modifica?

#6
Redount2k9

Redount2k9

    Member

  • Grup: Members
  • Posts: 374
  • Înscris: 13.07.2010
Adica daca i = 5 si j = 7,   5 < 7 (true) => functia va returna valoarea 1 (sau true) si 0 in caz contrar.

#7
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
https://youtu.be/gxZJ5JNuWMY?t=4m12s la 4:11 zice ca se poate afisa si cu for(it : vec) dar cand fac asta imi zice ca it wasnt declared in this scope

#8
Redount2k9

Redount2k9

    Member

  • Grup: Members
  • Posts: 374
  • Înscris: 13.07.2010
Da-i lui it un tip de data (int, vector<ceva>::iterator, etc) sau lasa compilatorul sa ii gaseasca unul (auto).  
Deci, for ( auto it : vec ) ar trebui sa functioneze.

#9
sftpdt

sftpdt

    Senior Member

  • Grup: Senior Members
  • Posts: 3,664
  • Înscris: 29.08.2013
Ai C++11? Ce compilator folosesti?

#10
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014

 sftpdt, on 29 iulie 2015 - 22:46, said:

Ai C++11? Ce compilator folosesti?

CodeBlocks 13.12 ( MinGW )


#11
sftpdt

sftpdt

    Senior Member

  • Grup: Senior Members
  • Posts: 3,664
  • Înscris: 29.08.2013
Intra la setari la compilator si bifeaza o casuta unde scrie ceva de c++11 (n-am codeblocks la indemana).

#12
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
am pus auto in fata la it si tot nu merge , imi apare error: expected initializer before ':' token|
si cand pun fara imi zice ca it wasnt declared in this scope

am rezolvat faza cu C++11 , am testat cu auto a=42; si merge ...
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
vector<int> vec;
int main()
{
		int a,n;
		cin>>n;
		for(int i = 0; i < n; i++){
				cin>>a;
				vec.push_back(a);
  }
sort(vec.begin(),vec.end());
  for( it: vec) cout<<*itr<<'\x0';
return 0;
}



#13
EnachescuAlin

EnachescuAlin

    Active Member

  • Grup: Members
  • Posts: 1,008
  • Înscris: 08.07.2013
for (auto i : vec)
	cout << i << ' ';



#14
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014

 EnachescuAlin, on 30 iulie 2015 - 23:29, said:

for (auto i : vec)
cout << i << ' ';


expected initializer before ':' token| la linia aia

si dupa ami sunt cateva erori care cred ca sunt de la asta . primary exp before return , ; , )

#15
EnachescuAlin

EnachescuAlin

    Active Member

  • Grup: Members
  • Posts: 1,008
  • Înscris: 08.07.2013
sigur ai bifat c++11?

#16
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
da . am testat cu auto a=42; si mergea

#17
EnachescuAlin

EnachescuAlin

    Active Member

  • Grup: Members
  • Posts: 1,008
  • Înscris: 08.07.2013
Fa un print la cod.

#18
VladBtz

VladBtz

    Active Member

  • Grup: Members
  • Posts: 1,702
  • Înscris: 24.09.2014
pe cpp.sh imi merge , deci cred ca e de la codeblocks . mie in codeblocks la setari nu imi apare Have g++ follow  ....c++11 de bifat cum apare in tutoriale , asa ca am pus

-std=c++0x -U__STRICT_ANSI__
-std=gnu++0x -U__STRICT_ANSI__

in other options cum arata pe youtube. am facut testul cu auto a=42 pe care il aveau si aia care bifau  Have ..C++11 si a mers .

Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate