abonnement Unibet Coolblue
  dinsdag 27 september 2005 @ 11:20:04 #1
65983 adjes26
----== BRaK ==----
pi_30967050
Ik ben een programmaatje aan het schrijven en wil het volgende even weten :

23 45 67

Ik lees deze drie cijfers uit een text bestand en ik wil pascal laten tellen hoeveel spaties er tussen zitten. Hier moet dus 2 uit komen maar hoe laat ik pascal dit tellen?

Kan iemand mij helpen?
Yesterday is History, Today is a gift, Tomorow is Mystery!!
pi_30967752
1
2
3
4
5
6
7
int teller = 0;
while(!file.eof()){
   string regel = file.readline();
   for(int i = 0; i < regel.size(); i++){
      if(regel[i] == ' ') teller++;
   }
}

En dan moet je zelf nog ff kijken hoe de syntax in pascal is
Scared of my own shadow it's a battle living paranoid..
  dinsdag 27 september 2005 @ 11:46:15 #3
24492 Flurry
Het was een mooie tijd
pi_30967756
zo uit het hoofd zou ik de regel tekst in een pchar stoppen en dan er doorheen lopen:
1
2
3
4
5
6
7
8
9
function count(s : pchar): integer;
begin
  result := 0;
  while(s^ <> #0) do
  begin
    if(s^ = ' ') then result := result + 1;
    inc(s);
  end;
end;


[ Bericht 2% gewijzigd door Flurry op 27-09-2005 11:47:18 (functieresultaat vergeten) ]
We cross our bridges when we come to them and burn them behind us, with nothing to show for our progress except a memory of the smell of smoke, and a presumption that once our eyes watered.
  dinsdag 27 september 2005 @ 11:59:59 #4
65983 adjes26
----== BRaK ==----
pi_30968121
hmmzz.. ik lees die cijfers dus uit een bestand en het kunnen meer dan 1 regel zijn.

bijvoorbeeld:
23 4 55
3 4 66
3 3

Nu moet ik dus van elke regel weten hoeveel spaties het zijn!?
Yesterday is History, Today is a gift, Tomorow is Mystery!!
pi_30969355
quote:
Op dinsdag 27 september 2005 11:59 schreef adjes26 het volgende:
hmmzz.. ik lees die cijfers dus uit een bestand en het kunnen meer dan 1 regel zijn.

bijvoorbeeld:
23 4 55
3 4 66
3 3

Nu moet ik dus van elke regel weten hoeveel spaties het zijn!?
1
2
3
4
5
6
7
8
9
10
11
int spatieTeller = 0;
int regelTeller = 1;
while(!file.eof()){
   string regel = file.readline();
   for(int i = 0; i < regel.size(); i++){
      if(regel[i] == ' ') spatieTeller++;
   }
   out.println("Aantal spaties op regel " + regelTeller + ": " + spatieTeller);
   spatieTeller = 0;
   regelTeller++;
}

Je zult bij je file moeten checken of je bij eof (end of file) bent. Zolang je nog niet bij eof bent kun je regels lezen. Een regel lees je in naar een string (weet niet of pascal strings heeft). Dan loop je van het begin van de string naar het eind en tel je de karakters die overeenkomen met spaties. Na het doorlopen van een regel geef je wat output en doe je je regelnummer ophogen.
Syntax moet je wel ff "herschrijven" naar pascal.

Wat heb je zelf al aan code trouwens?
Scared of my own shadow it's a battle living paranoid..
pi_30972205
maak een array en voor elke regel dus tot newline zet je et aantal spaties erin, hoe de
syntax ervan in pascal is zou ik zo niet weten maar iig dat je zoiets krijgt:

$regel[1] = 4;
$regel[2] = 2;
enz.
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')