Не запускается само приложение сделанное по Head First 2022 C#

Рейтинг: 0Ответов: 1Опубликовано: 16.03.2023

Суть: Продолжаю заниматься по учебнику "Head First Изучаем C# 4 2022"

Сделал задание четко по упражнению - пустая консоль. Ctrl+C Ctrl+V решения в IDE - пустая консоль.

Грешу на инициализацию, но сам додумать не смог.

(приложение разбито на 2 файла с классами)

Основной класс:

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

namespace PickRandomCards
{
    class CardPicker
    {
        static Random random = new Random();
        public static string[] PickSomeCards(int numberOfCards)
        {
            string[] pickedCards = new string[numberOfCards];
            for (int i = 0; i < numberOfCards; i++)
            {
                pickedCards[i] = RandomValue() + " of " + RandomSuit();
            }
            return pickedCards;
        }
        private static string RandomValue()
        {
            int value = random.Next(1, 14);
            if (value == 1) return "Ace";
            if (value == 11) return "Jack";
            if (value == 12) return "Queen";
            if (value == 13) return "King";
            return value.ToString();
        }
        private static string RandomSuit()
        {
            // получить случайное число от 1 до 4
            int value = random.Next(1, 5);
            // если это 1, вернуть строку Spades
            if (value == 1) return "Spades";
            // если это 2, вернуть строку Hearts
            if (value == 2) return "Hearts";
            // если это 3, вернуть строку Clubs
            if (value == 3) return "Clubs";
            // если выполнение продолжается, вернуть строку Diamonds
            return "Diamonds";
        }
    }
}

Класс инициализатор

using PickRandomCards;

static void Main(string[] args)
{
    Console.Write("Enter the number of cards to pick: ");
    string line = Console.ReadLine();
    if (int.TryParse(line, out int numberOfCards))
    {
        foreach (string card in CardPicker.PickSomeCards(numberOfCards))
        {
            Console.WriteLine(card);
        }
    }
    else
    {
        Console.WriteLine("Вань, ты дурак совсем?");
    }
}

Ответы

▲ 0

На будущее тем, кто если вдруг забредет сюда с таким же вопросом по этой книге.... Все же не все в ней так правильно как кажется, проверяйте сами в том числе!

   using PickRandomCards;
    
    namespace Go
    {
    class Program
    {
        private static void Main(string[] args)
        {
            startProgram();
        }

        static void startProgram()
        {


            Console.WriteLine("Enter the number of cards to pick: ");
            string line = Console.ReadLine();
            if (int.TryParse(line, out int numberOfCards))
            {
                foreach (string card in CardPicker.PickSomeCards(numberOfCards))
                {
                    Console.WriteLine(card);
                }
            }
            else
            {
                Console.WriteLine("Please enter a valid number.");
            }

        }
    }
}