일부 코드를 사용한 다음 루프에서 다시 사용합니다. 보기 흉해 보입니다. 개선 할 방법이 있습니까?

파트릭 구스타프손

저는 C #을 배우기 시작했습니다. 숫자 프로그램에 대한 간단한 추측을 썼습니다. 작동하지만 루프 전에 일부 코드를 사용한 다음 루프에서 다시 사용합니다. 더 나은 방법이 있어야합니다.

using System;

namespace Guessthenumber
{
class Program
{
    static void Main()
    {
        Random rnd = new Random();
        string guess;
        int yourguess;
        int dice = rnd.Next(1, 7);
        Console.WriteLine("Guess a number between 1 and 6");
        guess = Console.ReadLine();
        yourguess = int.Parse(guess);

루프에서 다시 반복하는 패턴이 있습니다. 이것을 피할 수있는 방법이 있습니까?

        if (yourguess > dice)
        {
            Console.WriteLine("Lower");
        }
        if (yourguess < dice)
        {
            Console.WriteLine("Higher");
        }
        if (yourguess == dice)
        {
            Console.WriteLine("Correct!");
        }
        while (yourguess != dice)
        {


          guess = Console.ReadLine();
          yourguess = int.Parse(guess);
            if (yourguess > dice)
            {
                Console.WriteLine("Lower");
            }
            if (yourguess < dice)
            {
                Console.WriteLine("Higher");
            }
            if (yourguess == dice)
            {
                Console.WriteLine("Correct!");
            }

        }
        Console.WriteLine("Press enter to exit");
        Console.ReadLine();
    }
}
}
데이비드 아르노

do, while대신 루프를 사용하십시오 while. 이렇게하면 코드가 다음과 같이됩니다.

static void Main()
{
    Random rnd = new Random();
    string guess;
    int yourguess;
    int dice = rnd.Next(1, 7);
    Console.WriteLine("Guess a number between 1 and 6");
    do
    {
        guess = Console.ReadLine();
        yourguess = int.Parse(guess);

        if (yourguess > dice)
        {
            Console.WriteLine("Lower");
        }
        if (yourguess < dice)
        {
            Console.WriteLine("Higher");
        }
        if (yourguess == dice)
        {
            Console.WriteLine("Correct!");
        }
    } while (yourguess != dice);

    Console.WriteLine("Press enter to exit");
    Console.ReadLine();
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

TOP 리스트

  1. 1

    ImageJ-히스토그램 빈을 변경할 때 최대, 최소 값이 변경되는 이유는 무엇입니까?

  2. 2

    Excel : 합계가 N보다 크거나 같은 상위 값 찾기

  3. 3

    원-사각형 충돌의 충돌 측면을 찾는 문제

  4. 4

    상황에 맞는 메뉴 색상

  5. 5

    Matlab의 반복 Sortino 비율

  6. 6

    Oracle VirtualBox-설치를 위해 게스트를 부팅 할 때 호스트 시스템이 충돌 함

  7. 7

    openCV python을 사용하여 텍스트 문서에서 워터 마크를 제거하는 방법은 무엇입니까?

  8. 8

    Python 사전을 사용하는 동안 "ValueError : could not convert string to float :"발생

  9. 9

    JavaFX : TilePane을 중앙에 배치하고 TilePane 자식을 왼쪽에서 오른쪽으로 배치하는 방법은 무엇입니까?

  10. 10

    regedit에서 방금 내 보낸 Windows 레지스트리 가져 오기 문제

  11. 11

    Cassandra에서 버전이 지정된 계층의 효율적인 모델링

  12. 12

    C ++ VSCode에서 같은 줄에 중괄호 서식 지정

  13. 13

    JQuery datepicker 기능이 인식되지 않거나 새 프로젝트에서 작동하지 않음

  14. 14

    Android에서 Drawable을 int로 또는 그 반대로 변환하는 방법

  15. 15

    방향 변경시 $ (window) .resize ()가 발생합니까?

  16. 16

    매개 변수에서 쿼리 객체를 선언하는 방법은 무엇입니까?

  17. 17

    System.Data.SqlClient.SqlException : 'SSPI 컨텍스트를 생성하지 못했습니다.'

  18. 18

    전자 브라우저를 전체 화면 크기로 만드는 방법은 무엇입니까?

  19. 19

    jfreecharts에서 x 및 y 축 선을 조정하는 방법

  20. 20

    Ubuntu는 GUI에서 암호로 사용자를 만듭니다.

  21. 21

    문자열 따옴표, 길이 총 개수 및 arrayname [int]는 어떻게 작동합니까?

뜨겁다태그

보관