Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
ja666 Forumaš(ica)

Pridružen/a: 28. 09. 2011. (12:28:42) Postovi: (56)16
|
|
[Vrh] |
|
JV Forumaš(ica)

Pridružen/a: 07. 02. 2011. (11:13:19) Postovi: (5C)16
|
|
[Vrh] |
|
Gost
|
Postano: 14:51 sub, 7. 4. 2012 Naslov: |
|
|
rijec je o kolokviju iz 2008. (koji je stavljen na web), 1.zadatak, stalno mi vraca gresku segmentation fault, a ne znam u cemu je problem pa ako se nekom da pogledat na brzinu bila bih zahvalna..unaprijed hvala
[code:1]
#include<iostream>
#include<string>
#include<list>
#include<utility>
using namespace std;
template<class T> struct dugovi{
list<pair<int, T> > L;
void dodaj(int iznos, T datum);
int oprosti(int iznos1);
int zastara (T datum1);
int ukupno(void);
~dugovi(void);
};
template<class T>
void dugovi<T>::dodaj(int iznos, T datum){
int br=0, najmanjidug;
typename std::list<pair<int, T> >::iterator li, ltemp;
for(li=L.begin(); li!=L.end(); ++li) br++;
if(br<100){
pair<int, T> P(iznos, datum);
L.push_back(P);
}
if(br==100){
li=L.begin();
najmanjidug=li->first;
for(li=L.begin(); li!=L.end(); ++li){
if(li->first<najmanjidug) najmanjidug=li->first;
}
li=L.begin();
while(li!=L.end()){
if(li->first==najmanjidug){
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
break;
}
}
pair<int, T> P(iznos, datum);
L.push_back(P);
}
}
template<class T>
int dugovi<T>::oprosti(int iznos1){
int oprostenidug=0;
typename std::list<pair<int, T> >::iterator li, ltemp;
li=L.begin();
while(li!=L.end()){
if(li->first<iznos1){
oprostenidug=oprostenidug + li->first;
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
}
}
return oprostenidug;
}
template<class T>
int dugovi<T>::zastara(T datum1){
int ukupnazastara=0;
typename std::list<pair<int, T> >::iterator li, ltemp;
li=L.begin();
while(li!=L.end()){
if(li->second<datum1){
ukupnazastara=ukupnazastara + li->first;
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
}
}
return ukupnazastara;
}
template<class T>
int dugovi<T>::ukupno(void){
int ukupnodugovanje=0;
typename std::list<pair<int, T> >::iterator li;
for(li=L.begin(); li!=L.end(); ++li){
ukupnodugovanje=ukupnodugovanje + li->first;
}
return ukupnodugovanje;
}
template<class T>
dugovi<T>::~dugovi(void){
typename std::list<pair<int, T> >::iterator li;
for(li=L.begin(); li!=L.end(); ++li){
cout<< li->first <<", "<< li->second;
}
}
int main(void){
dugovi<string> dugovistringa;
dugovistringa.dodaj(200, "20031122");
dugovistringa.dodaj(800, "19990218");
dugovistringa.dodaj(1000, "20090703");
dugovistringa.oprosti(300);
cout<<dugovistringa.ukupno()<<endl;
dugovistringa.zastara("20000505");
dugovistringa.~dugovi();
return 0;
}
[/code:1]
rijec je o kolokviju iz 2008. (koji je stavljen na web), 1.zadatak, stalno mi vraca gresku segmentation fault, a ne znam u cemu je problem pa ako se nekom da pogledat na brzinu bila bih zahvalna..unaprijed hvala
Kod: |
#include<iostream>
#include<string>
#include<list>
#include<utility>
using namespace std;
template<class T> struct dugovi{
list<pair<int, T> > L;
void dodaj(int iznos, T datum);
int oprosti(int iznos1);
int zastara (T datum1);
int ukupno(void);
~dugovi(void);
};
template<class T>
void dugovi<T>::dodaj(int iznos, T datum){
int br=0, najmanjidug;
typename std::list<pair<int, T> >::iterator li, ltemp;
for(li=L.begin(); li!=L.end(); ++li) br++;
if(br<100){
pair<int, T> P(iznos, datum);
L.push_back(P);
}
if(br==100){
li=L.begin();
najmanjidug=li->first;
for(li=L.begin(); li!=L.end(); ++li){
if(li->first<najmanjidug) najmanjidug=li->first;
}
li=L.begin();
while(li!=L.end()){
if(li->first==najmanjidug){
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
break;
}
}
pair<int, T> P(iznos, datum);
L.push_back(P);
}
}
template<class T>
int dugovi<T>::oprosti(int iznos1){
int oprostenidug=0;
typename std::list<pair<int, T> >::iterator li, ltemp;
li=L.begin();
while(li!=L.end()){
if(li->first<iznos1){
oprostenidug=oprostenidug + li->first;
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
}
}
return oprostenidug;
}
template<class T>
int dugovi<T>::zastara(T datum1){
int ukupnazastara=0;
typename std::list<pair<int, T> >::iterator li, ltemp;
li=L.begin();
while(li!=L.end()){
if(li->second<datum1){
ukupnazastara=ukupnazastara + li->first;
ltemp=li; ltemp++;
L.erase(li);
li=ltemp;
}
}
return ukupnazastara;
}
template<class T>
int dugovi<T>::ukupno(void){
int ukupnodugovanje=0;
typename std::list<pair<int, T> >::iterator li;
for(li=L.begin(); li!=L.end(); ++li){
ukupnodugovanje=ukupnodugovanje + li->first;
}
return ukupnodugovanje;
}
template<class T>
dugovi<T>::~dugovi(void){
typename std::list<pair<int, T> >::iterator li;
for(li=L.begin(); li!=L.end(); ++li){
cout<< li->first <<", "<< li->second;
}
}
int main(void){
dugovi<string> dugovistringa;
dugovistringa.dodaj(200, "20031122");
dugovistringa.dodaj(800, "19990218");
dugovistringa.dodaj(1000, "20090703");
dugovistringa.oprosti(300);
cout<<dugovistringa.ukupno()<<endl;
dugovistringa.zastara("20000505");
dugovistringa.~dugovi();
return 0;
}
|
|
|
[Vrh] |
|
ceps Forumaš(ica)

Pridružen/a: 08. 10. 2010. (13:03:07) Postovi: (13A)16
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
@na Forumaš(ica)

Pridružen/a: 16. 10. 2011. (13:29:26) Postovi: (14)16
Spol: 
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
@na Forumaš(ica)

Pridružen/a: 16. 10. 2011. (13:29:26) Postovi: (14)16
Spol: 
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
meda Forumaš(ica)

Pridružen/a: 09. 01. 2010. (09:29:23) Postovi: (A0)16
|
|
[Vrh] |
|
pizza Gost
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
Tomislav Forumaš(ica)

Pridružen/a: 04. 10. 2010. (20:18:25) Postovi: (181)16
Spol: 
|
|
[Vrh] |
|
kkarlo Forumaš(ica)

Pridružen/a: 19. 05. 2010. (08:43:59) Postovi: (1B2)16
Spol: 
|
|
[Vrh] |
|
@na Forumaš(ica)

Pridružen/a: 16. 10. 2011. (13:29:26) Postovi: (14)16
Spol: 
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
kkarlo Forumaš(ica)

Pridružen/a: 19. 05. 2010. (08:43:59) Postovi: (1B2)16
Spol: 
|
Postano: 17:02 sri, 11. 4. 2012 Naslov: |
|
|
[quote="Anonymous"][quote="Anonymous"]https://docs.google.com/document/pub?id=1BvI48sn84-QUng2YJV-rACi8f4aw_MNOZ3rtAb45b5M
jel bi mogao netko napisat kako ova struktura izgledA? hvala[/quote]
1.zadatak[/quote]
upravo sam ga riješio...
ja sam napravio ovako:
template <class T> struct Katalog{
T Datum_poc, Datum_kraj;
map< pair<string, string>, pair<double, double> > polje;
+ funkcije...
};
i uspio sam napravit sve funkcije dosta jednostavno, te sve rade, barem na primjerima danima u nastavku zadatka...
Anonymous (napisa): | Anonymous (napisa): | https://docs.google.com/document/pub?id=1BvI48sn84-QUng2YJV-rACi8f4aw_MNOZ3rtAb45b5M
jel bi mogao netko napisat kako ova struktura izgledA? hvala |
1.zadatak |
upravo sam ga riješio...
ja sam napravio ovako:
template <class T> struct Katalog{
T Datum_poc, Datum_kraj;
map< pair<string, string>, pair<double, double> > polje;
+ funkcije...
};
i uspio sam napravit sve funkcije dosta jednostavno, te sve rade, barem na primjerima danima u nastavku zadatka...
|
|
[Vrh] |
|
Gost
|
|
[Vrh] |
|
kkarlo Forumaš(ica)

Pridružen/a: 19. 05. 2010. (08:43:59) Postovi: (1B2)16
Spol: 
|
|
[Vrh] |
|
|