Question Calculate the avarage in last task on this course

Adde87a

Member
Joined
Jun 17, 2019
Messages
8
Programming Experience
Beginner
Please please can somebody help me !
I study on a distance, i worked night shift and have to finnish this last thing today!
My brain does't work at all right now

the program i mostly written with swedish letters and words , the program will randomize and act as dice, first you choose how many "dices" (i dont know if this is correct english lol sorry)
you get a random number from 1-6 and after that in case 2 , i will have to calculate the avarage from the results


C#:
using System;
using System.Collections.Generic;
using System.Threading;

namespace ConsoleApp3
{
    class Dice
    {
        // detta är en statisk metod med en int som ett returvärde
        // metoden tar en parameter i form av ett random objekt av
        // randomklassen
        static int RullaTärning(Random slumpObjekt)
        {
            // här ska du skapa kod som slumpar fram ett tal
            // mellan 1 och 6, så att metoden "rullar" en 6 sidig
            // tärning när vi kallar på den

            // här slumpar vi fram ett tal mellan 1-6
            
            int diceGet = slumpObjekt.Next(1, 7);

            return (diceGet);  // metoden ska sedan returnera det rullade värdet

            
        }

        public void Main()
        {
            
            Random slump = new Random(); // Skapar en instans av klassen Random för vårt slumptal
            List<int> tärningar = new List<int>(); // listan för att spara våra rullade tärningar

            Console.WriteLine("\n\tVälkommen till tärningsgeneratorn!");

            bool kör = true;
            while (kör)
            {
                Console.WriteLine("\n\t[1] Rulla tärning\n" +
                    "\t[2] Kolla vad du rullade\n" +
                    "\t[3] Avsluta");
                Console.Write("\tVälj: ");
                int val;
                int.TryParse(Console.ReadLine(), out val);

                switch (val)
                {
                    case 1:
                        
                        Console.Write("\n\tHur många tärningar vill du rulla: ");
                        bool inmatning = int.TryParse(Console.ReadLine(), out int antal);

                      
        


                        if (inmatning)
                        {
                            for (int i = 0; i < antal; i++)
                            {
                                // här kallar vi på metoden RullaTärning
                                // och sparar det returnerade värdet i
                                // listan tärningar
                                tärningar.Add(RullaTärning(slump));
                            }
                        }

                        break;
                    case 2:


                        // hur många slag   //

                        int sum = tärningar.Count + RullaTärning(slump) / "THE  NUMBER OF DICES??"; // Skapar en int som ska innehålla medelvärdet av alla tärningsrullningar.






                        if (tärningar.Count <= 0)
                        {
                            Console.WriteLine("\n\tDet finns inga sparade tärningsrull! ");
                        }
                        else
                        {
                            Console.WriteLine("\n\tRullade tärningar: ");
                            foreach (int tärning in tärningar)
                            {
                                Console.WriteLine("\t" + tärning);
                            }
                            Console.WriteLine("\n\tMedelvärdet på alla tärningsrull: " + sum); // Här ska medelvärdet skrivas ut
                        }

                        break;
                    case 3:
                        Console.WriteLine("\n\tTack för att du rullade tärning!");
                        Thread.Sleep(1000);
                        kör = false;
                        break;
                    default:
                        Console.WriteLine("\n\tVälj 1-3 från menyn.");
                        break;
                }
            }
        }
    }
}


Thanks in advance !

and please make the answer simple as possible, im really tired and really in a noob stage with C# and programming
 
Ooh is it that easy ?

i made it like this instead changed some of the output text... Before i noticed you solution :)

Really appreciate your help and Will check it out more carefully!

C#:
int sum = 0

if (tärningar.Count {
Console.WriteLine("\n\tDet finns inga sparade tärningsrull! ");
}
else
{
Console.WriteLine("\n\tRullade tärningar: ");
foreach (int tärning in tärningar)
{
Console.WriteLine("\t" + tärning);
sum = sum + tärning;
}
Console.WriteLine("\n\tMedelvärdet på alla tärningsrull: " + sum/tärningar.Count); // Här ska medelvärdet skrivas ut
}

Skickat från min moto g(7) play via Tapatalk
 
With your current approach, you'll discover that the average of the values { 1, 0, 1, 0 } is going to be 0 rather than your expected 0.5. This is because you are using integer division instead of floating point division.
 
With your current approach, you'll discover that the average of the values { 1, 0, 1, 0 } is going to be 0 rather than your expected 0.5. This is because you are using integer division instead of floating point division.
Hehe yes I actually noted that and changed it later to a float :) thanks for replying and giving good answer ! Appreciate it

Happy weekend
Trevlig helg(Swedish) :)

Skickat från min moto g(7) play via Tapatalk
 
Back
Top Bottom