vil så gerne hive fat i et element hat[15], konvere det til et tal, multiplicere det med et andet float tal og derefter smide det tilbage i char arrayet - hvordan gør jeg det??
Du snakker om at gange med floats, og gemme det igen. Er det hensigtsmæssigt? Du har jo ingen mulighed for at gemme floating point værdier som en char, så det vil helt sikkert medføre tab af data. Mener du int?
Dit spørgsmål kan forståes på flere måder, men prøver at give et svar på det jeg tror du spørger om.
Hvis element hat[15] er et tegn for et ciffer kan du gøre følgende.
hat[15] = ((hat[15]- '0') * (char)n) + '0';
Hvis hat[15] opfattes som et tegn, indeholder hat[15] ascii-værdien for dette tegn. Hvis du f.eks. ønsker at konvertere ascii-værdien for '7' til tallet 7 kan du trække ascii-værdien af '0' fra. Omvendt hvis du vil den anden vej.
Hvis n er en float har jeg tilladt mig at indsætte en typecasting på variablen, således at den opfatter n som et heltal i beregningen. Der er ingen grund til at du bruger en float i denne beregning, da du alligevel ingen decimaler vil have i dit resultat. Float er tungere end heltal for computeren beregningsmæssigt, så derfor bruger man dem kun når det er nøvendigt.
Hej igen. Jeg kom lige til at kigge på kode og se at jeg havde glemt %10, således at koden kommer til at se således ud:
hat[15] = (((hat[15]- '0') * (char)n)%10) + '0';
%10 laver en division med 10, og lægger resten tilbage i værdien. Således at hvis tallet giver 12, bliver der lagt tallet 2 tilbage på det pågældende ciffer.
En lidt mere overskuelig fremstilling med samme funktion kommer her: hat[5] -= '0'; //converter til tal (hat[5] = hat[5] - '0';) hat[5] *= (char)n; //gang med float hat[5] %= 10; //hvis f.eks. resultatet = 12, bliver det til 2. hat[5] += '0'; //converter til tegn
Håber det var noget du kunne bruge
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.