delphiuser Mester
05. februar 2020 - 17:27 Der er 2 kommentarer og
1 løsning

Lottokupon

Hej Eksperter.

Jeg sidder og er igang med at kode en lotto kupon i C# console. det er en del af et skole projekt. Men er gået godt og grundigt i stå.

Programmet skal køre random numre hvilket virker fint.
men jeg skal kunne vælge x antal rækker som skal kunne udskrives.
men den udskriver kun en række.

her kommer min kode:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Lottokupon
{
    class Program
    {
        static void Main(string[] args)
        {
            // Her laver jeg min variabler
            int tal = 0, FørsteNummer = 1, SidsteNummer = 36, antalNumre = 0, antalRækker, numre, rows = 0;
            Random rand = new Random();


            // Her laver jeg bruger input på hvor mange rækker en bruger ønsker på sin lottokupon.
            Console.Write("Skriv antal rækker 1 - 10 : ");
            antalRækker = Convert.ToInt32(Console.ReadLine());

            antalNumre = antalRækker * 7;

            Console.WriteLine($"Antal spillet rækker: {antalRækker}");
            Console.WriteLine($"Antal numre på kuponen: {antalNumre}");

            bool[] lottonumre = new bool[antalNumre];

            Console.WriteLine();
            Console.WriteLine("Lotto Kupon");

            for (int i = 0; i < antalRækker; i++)
            {
                while (tal < 7)
                {
                    numre = rand.Next(FørsteNummer, SidsteNummer);

                    if (!lottonumre[numre])
                    {
                        lottonumre[numre] = true;
                        tal++;
                        Console.Write(numre.ToString().PadLeft(4));
                    }
                   
                }
            }
           
            Console.ReadKey();
        }
    }
}

håber der er en som kan hjælpe og vise mig en løsning.

venlig hilsen

delphiuser
arne_v Ekspert
05. februar 2020 - 19:19 #1
Aldeles utestet men et forslag:

for (int i = 0; i < antalRækker; i++)
            {
                while (tal < 7)
->
for (int i = 0; i < antalRækker; i++)
            {
                tal = 0;
                while (tal < 7)
delphiuser Mester
06. februar 2020 - 07:07 #2
Jeg får denne kode når jeg køre programmet.

dette er taget fra programmet når det køre.
Skriv antal rækker 1 - 10 : 5
Antal spillet rækker: 5
Antal numre på kuponen: 35

Lotto Kupon
  20  23  5  7  34  8  31  2  12  21  32  16  25


System.IndexOutOfRangeException
  HResult=0x80131508
  Message=Indekset lå uden for matrixens grænser.
  Source=Lottokupon
  StackTrace:
  at Lottokupon.Program.Main(String[] args) in C:\Users\micha\Documents\Studie\H1\Programmering\Opgaver\Lottokupon\Lottokupon\Program.cs:line 39

Jeg er helt blank lige pt med dette program.
arne_v Ekspert
06. februar 2020 - 21:58 #3
De her 3 passer vist ikke sammen:

antalNumre = antalRækker * 7;

bool[] lottonumre = new bool[antalNumre];

numre = rand.Next(FørsteNummer, SidsteNummer);
if (!lottonumre[numre])
{
        lottonumre[numre] = true;
Ny bruger Nybegynder

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.

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Microsoft bekræfter gigant-opkøb af AI-selskabet Nuance
Nuance Communication, der blandt andet har leveret teknologi til Apples Siri, er blevet opkøbt af Microsoft, der mandag eftermiddag bekræfter handlen.
Computerworld
Gigantisk datalæk: 600.000 danskeres Facebook-data offentliggjort på hackerforum
Data om 533 millioner Facebook-brugere på verdensplan er i weekenden blev lækket på hackerforum.
CIO
Har du rost din mellemleder i dag? Snart er de uddøde - og det er et tab
Computerworld mener: Mellemledere lever livet farligt: Topledelsen får konstant ideer med skiftende hold i virkeligheden, og moden går mod flade agile organisationer. Men mellemlederen er en overset hverdagens helt med et kæmpe ansvar. Her er min hyldest til den ofte latterliggjorte mellemleder.
Job & Karriere
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
"Vi var nødt til at sige til dem, at I er nødt til at sende ham hjem nu, for han begynder at knække"
White paper
Overser du muligheder for at optimere din Dynamics-investering?
Der er omfattende og ofte oversete muligheder for at understøtte centrale forretningsprocesser med Dynamics 365 Finance & Operations.