udvidet spørgsmål til indlæsning af speciel tekstfil

Tags:    c++

hej

jeg sidder med nøjagtig samme tekst fil som der er vist i spørgsmålet stillet af Christopher von Würden. jeg sidder bare med et andet problem. jeg har fået til opgave at indlæse alle retningsobservationer og udskrive dem til en anden tekstfil. retningsobservationer har id-nummer:

1
1
2

hvis man har læst spørgsmålet vil man også se at der forekommer noget der hedder forkortet retningsobservationer, som har id-nummer:

1
2

forkortet retningsobservationer, må kun forekomme såfremt der har været en retningsobservation før. det vil sige at man må godt have tilfældet:

1 702.00
1 15.00
2 0.000
1 14.00
2 19.480

man må også godt have tilfældet:

1 14.00
2 19.480
1 702.00
1 15.00
2 0.000

min opgave er at scanne hele tekstfilen igennem, finde alle retningsobservationer, og forkortet retningsobservationer og udskrive dem til en anden tekstfil. problemet er bare at der er ikke nogen bestemt rækkefølge observationerne kommer i, og jeg har ikke været i stand til at scanne alle observationerne ind korrekt. hvis der er nogen der har et forslag til en maskine der kan gå ind i tekstfilen, og finde alle retningsobservationer, plus forkortet retningsobservationer, og skrive dem ud til en ny tekstfil, ville det være til stor hjælp.

hvis i ikke kan finde tekstfilen er den på linket

http://peecee.dk/upload/download/112185






Jeg vil anbefale at du læser data ind i en datastruktur i hukommelsen, som du herefter kan søge igennem. Dette kunne for eksempel være en (eller flere) std:map bestående af hhv. id og dit sekundære tal (er det en længde?).

Du kan så på dine datasæt lave forskellige operatorer til for eksempel sammenligning og sortering. Herved vil det være nemt og hurtigt for dig at søge igennem dine data.

Hth



jeg havde ogs[ forestillet mig, at lægge det ind i en vektor eller datastruktur. problemet er bare at jeg ikke ved hvordan det skal puttes ned regn kodemæssigt. jeg har siddet med opgaven i snart 6 måneder, og er gået rimelig i stå. hvis der er nogen der kan hjælpe mig med det rent kodemæssige, ville jeg være meget tilfreds.



Man kunne:
Fold kodeboks ind/udKode 




Man kunne:
Fold kodeboks ind/udKode 



hej bertel jeg har prøvet at køre din kode igennem, men når jeg gør det, tager den bare hele test.dat, og skriver ud til skærmen. den ser ikke ud til at sortere alle retningsobservationerne fra. hvis der er noget jeg gør forkert vil jeg meget gerne vide det.



Koden læser bare alle data ind i dataList og udskriver dem igen.
Du skal selv lave en funktion til at sortere dem fra der skal sorteres fra.
Hvis du fortæller hvordan der skal sorteres kan jeg godt hjælpe med at lave funktionen.



Koden læser bare alle data ind i dataList og udskriver dem igen.
Du skal selv lave en funktion til at sortere dem fra der skal sorteres fra.
Hvis du fortæller hvordan der skal sorteres kan jeg godt hjælpe med at lave funktionen.


en retningsobservation har ID nummer

1
1
2

det vil sige, at den kan for eksempel se således ud

row: 1 ID: 1 nr: 7.00
row: 2 ID: 1 nr: 14.75
row: 3 ID: 2 nr: 705.00

hvis du har studeret test.dat, vil du også opdage at der forekommer noget der hedder forkortet retnings observationer, og har ID nummer:

1
2

for eksempel:

row: 12 ID: 1 nr: 4.00
row: 13 ID: 2 nr: 12.57

en forkortet retningsobservation må kun forekomme såfremt der har været en retningsobservation i forvejen, eller vil komme en næste gang. det vil sige at du kan godt have følgende eksempel:

row: 1 ID: 1 nr: 7.00
row: 2 ID: 1 nr: 14.75
row: 3 ID: 2 nr: 705.00
row: 4 ID: 1 nr: 4.00
row: 5 ID: 2 nr: 12.57

du kan også godt have følgende eksempel:

row: 1 ID: 1 nr: 4.00
row: 2 ID: 2 nr: 12.57
row: 3 ID: 1 nr: 7.00
row: 4 ID: 1 nr: 14.75
row: 5 ID: 2 nr: 705.00

sorteringsfunktionen, skal gå ind i listen, finde alle retningsobservationer, samt deres forkortet retningsfunktioner, sortere dem fra og udskrive dem til en anden fil, hvor man kun har alle retningsobservationer, samt deres forkortet retningsobservaitoner. det vil sige at hver gang maskinen støder på ID kombinationen

1
1
2

samt:

1
2
hvis vel og mærket der har været en retningsobservation før, eller efter. så skal den printe den kombination ud til en anden fil. hvis du har yderligere spørgsmål, vil jeg gerne svare på dem, så hurtigt som muligt.



Det lyder som en ret triviel logik opgave.

Søg listen igennem, finder du sekvensen 1,1,2 sætter du et flag og udskriver, finder du derpå sekvensen 1,2 udskriver du igen.

Så vidt jeg kan se burde det være ret let at lave den sorteringsfunktion, men jeg synes du selv skal gøre det. Opstår der problemer undervejs, svarer jeg gerne på spørgsmål.



Det lyder som en ret triviel logik opgave.

Søg listen igennem, finder du sekvensen 1,1,2 sætter du et flag og udskriver, finder du derpå sekvensen 1,2 udskriver du igen.

Så vidt jeg kan se burde det være ret let at lave den sorteringsfunktion, men jeg synes du selv skal gøre det. Opstår der problemer undervejs, svarer jeg gerne på spørgsmål.


hej bertel. det skal lige siges, at jeg er forholdsvis ny i faget. jeg er kun på anden semester inden for elektronik, og jeg har desvære ikke nogen kendskab til hvordan man bruger flags, men jeg havde forstillet mig min funktion skulle se nogenlunde således ud:
Fold kodeboks ind/udKode 


jeg er godt klar over at koden ikke ville virke, men jeg havde forestillet mig at funktionen skal læse test.dat igennem via list, og så længe list har en størrelse på 3 skal den undersøge ID nummerne på hver plads, og hvis de stemmer overens med koden for retningsobservationer, skal den udskrive til fil. men igen jeg kunne godt bruge nogle hints til det rent kodemæssige.



Et flag (i sin simple form) er blot et bool der er true eller false.

I spørgsmålet her: http://www.udvikleren.dk/C/Thread.aspx/1/24613/

Har jeg lavet en meget simpel sorterings funktion, du kunne starte med den.
Og bygge de resterende checks på.



Et flag (i sin simple form) er blot et bool der er true eller false.

I spørgsmålet her: http://www.udvikleren.dk/C/Thread.aspx/1/24613/

Har jeg lavet en meget simpel sorterings funktion, du kunne starte med den.
Og bygge de resterende checks på.


hej bertel. jeg har læst dit eksempel, og så vidt jeg har forstået så er det denne type sortering jeg skal have fat i

Fold kodeboks ind/udKode 


jeg har 2 spørgsmål. hvorfor er det lige at den kun skriver 2-tallet ud og ikke de tilhørende ettallet. jeg har prøvet at tjekke med min test fil, og det ser ud til at den får alle retningsobservationerne med, nu skal jeg så også have de forkortet retningsobservationer med. skal jeg så i det tilfælde lave en nu case, eller kan jeg inkludere den oven i den forgående case?



t