structeres i c

Tags:    c++

<< < 123 > >>
Hej jeg har fået et program jeg skal skrive, men ved ikke hvordan jeg skal skrive det, jeg er igang med opg 1.

link til opg:
http://peecee.dk/upload/view/164191


link til inputfil:
http://peecee.dk/upload/view/164190

den kode jeg har skrevet:

Fold kodeboks ind/udKode 




Jeg har nu lavet begge loops i én, og det virker.
Men hvis du lægger mærke til opgaven, så står der:
Erklæringen af funktionen skal være:
Void filkonverter1(char infil[], char outfil[]);
og
Angiv precondition og postcondition for funktionen.


Hvad skal jeg gøre ved det?

Min kode indtil videre er:
Fold kodeboks ind/udKode 


p.s. er min kode opsætning rigtigt?



Du skal vel så oprette en funktion:

Void filkonverter1(char infil[], char outfil[])
{
// Indsæt koden her
}

Og kalde den fra main med:
filkonverter1("input.txt", "output.txt");

Det med post og pre-condition giver vel nærmest sig selv...

Kodeopsætning; jeg er ikke så vild med din placering af {} inde i while-loopen, og vil gerne have {} på alle if/else i loopen:
Fold kodeboks ind/udKode 

Du kan også overveje at lave den anden if omvendt så du undgår den tomme {}, ca:
Fold kodeboks ind/udKode 




Jeg har nu lavet en del på opgaven.
har lavet opg 1 og 2, med de der funktioner.

Men jeg kan ikke få den til at udskrive i opg 2, den opretter filen, men den skriver kun et 1-tal ud?

kan ikke se fejlen.

Fold kodeboks ind/udKode 





Du skal have flyttet disse ud af while-løkken:
fclose(pt1);
fclose(pt2);



Okay takker. den kører nu.
Hvordan laver jeg opg 3 :S Tror ikke at jeg helt forstår opgaven.
Har skrevet det her som funktionen: void fileconverterTre(char inputfilTre[], char outputfilTre[], char TegnEt, char TegnTo)
Ved ellers ikke hvordan jeg skal komme videre.



Du skal vel lave en funktion der ligner den fra opgave 2, men hvor de to tegn (mellemrum og semikolon) ikke er faste, men argumenter til funktionen.

DVS, fra funktionen til opgave 2 skal du erstatte:
if(ch == ' ')
{
ch = ';';
}

med:

if(ch == tegn1)
{
ch = tegn2;
}

I øvrigt er de der {} du har omkring fprintf(...) i funktionerne overflødige, så dem ville jeg slette.



Jeg ved ikke om jeg har forstået det helt rigtigt, men har prøvet og lave opg 3.

har oploadet inputfilen:
http://peecee.dk/upload/view/165975

og min kode ser sådan ud:
Fold kodeboks ind/udKode 




Jeg tror ikke denne del af fileconverterTre er rigtig
Fold kodeboks ind/udKode 

Jeg tror det skal være:
if(ch == tegn1 && lastCh == tegn1)

I øvrigt tror jeg du skal putte denne ind i funktionerne:
char ch, lastCh = 0;

Fra opgave teksten skal du måske også se på denne del:
Overvej om en forudsætning skal være at inputfilen kun indeholder et skilletegn mellem dataene eller denne funktion skal slette overflødige skilletegn.




så langt.
Fold kodeboks ind/udKode 

Men hvordan så lave den anden del af opgaven, ved at lave en til loop?
Altså jeg skal vist få den til at inputfilen kun indeholder et skilletegn mellem dataene, eller skal jeg få den til at slette overflødige skilletegn.



Så vidt jeg kan se vil din funktion skippe flere skilletegn, hvis der er mere end et. Og det er vel ok?



<< < 123 > >>
t