ptta Skrevet 18. september 2008 Del Skrevet 18. september 2008 (endret) Hei! Jeg har nettopp begynt å lære meg C#, i den forbindelse løser jeg noen problemer på denne siden Project Euler. Nå driver jeg med problem 20 som ser sånn ut. Dette er i og for seg greit nok, og jeg har skrevet følgende kode(jeg bruker visual web developer og skriver svaret til en webside for de som lurer på hvorfor koden er litt spesiel på et par punkter): using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { double fakult = 1; long sum = 0; for (int gangetall = 1; gangetall <= 100; gangetall++) { fakult = fakult * gangetall; } string fakultStr = Convert.ToString(fakult); char[] fakultChr = fakultStr.ToCharArray(); for (int indeks = 0; indeks <= fakultStr.Length-1; indeks++) { sum += Convert.ToInt32(fakultChr[indeks]); } labResultat.Text = Convert.ToString(fakult); labResultat.Text += Convert.ToString(sum); } } Problemet er bare at double variablen "sum" lagrer 100! som X,XXXXXXXXXEXXX i stedet for å skrive det ordentlige tallet, dermed blir summering av sifrene helt gal. Er det noen so har en løsning på det problemet? Endret 18. september 2008 av ptta Lenke til kommentar
j000rn Skrevet 18. september 2008 Del Skrevet 18. september 2008 Er det noen so har en løsning på det problemet? Hvorfor konverterer du tallet til String hele tiden? Lenke til kommentar
hockey500 Skrevet 19. september 2008 Del Skrevet 19. september 2008 Enkleste løsningen er nok BigInteger klassen. google it. Lenke til kommentar
HDSoftware Skrevet 22. september 2008 Del Skrevet 22. september 2008 Er det noen so har en løsning på det problemet? Hvorfor konverterer du tallet til String hele tiden? Han skal ha tverrsummen og det er vel ingen metode i INT som gir tverrsum. Eller er det kansje det? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå