Program mi vstúpi do súboru a číta z neho znaky. Jeho úlohou je spočítať všetky čísla. Lenže on mi spočítava hodnotu čísla, ktorú má v ASCII tabuľke. Ako dosiahnem, aby mi spočítaval "pravu" hodnotu čísla ?
#include <stdio.h>
#include <ctype.h>
int main ()
{
FILE* fr;
int c;
int pocet = 0;
if ((fr = fopen ("C:\\temp\\cisla.txt", "r")) == 0)
{
printf ("Subor sa nepodarilo otvorit\n");
return 1;
}
while ((c = getc (fr)) != EOF)
{
if (isdigit (c))
pocet += c;
}
printf ("pocet je %i\n", pocet);
if (fclose (fr) == EOF)
printf ("Subor sa nepodarilo zatvorit\n");
return 0;
}
Díky, ísť to ide, ale neexistuje nejaký iný spôsob, aby som nemusel odpočítavať z ASCII tabuľky ?...nemám rád takéto riešenia, zdajú sa mi také moc konkrétne.
nevim co se ti nelibi na jednoduchych resenich... znak - '0' neni zase zle reseni - je sice konkretni ale nevidim moc sanci jak to jinak prevest (mozna tak prekladova tabulka... cemuz uz rikam zase overkill)
Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...