728x90
SMALL

NumberFormatExceptionà SystemException 클래스 계승, 이 클래스가 à Exception 클래스를 계승 //3번째

IndexOutOfRangeExceptionà SystemException 클래스를 계승, 이 클래스가 à Exception 클래스를 계승한다.

DivideByZeroExceptionà ArithmeticException 클래스를 계승, 이 클래스가 à SystemException 클래스를 계승한다 à 이 클래스가 Exception 클래스를 계승한다.

ArgumentNullException 클래스는 à ArgumentException 클래스를 계승하고, 이 클래스가 à SystemException 클래스를 계승한다. 다시 이 클래스가 à Exception 클래스를 계승한다.

 

//

// 例外のクラス構成を理解しよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        try

        {

           

        //  throw new Exception(); //마지막 exception으로

        //  throw new FormatException();

        //3번째 예외로 FormatException SystemException을 계승한다

        //throw new IndexOutOfRangeException();

        //SystemException을 계승해서 3이 나온다

        //throw new DivideByZeroException();

        //2라고 출력된다 얘는 ArithmeticException을 계승한다

        throw new ArgumentNullException();

        //1이 출력된다 얘는 ArgumentException을 계승한다

       

        }

       

       

        catch (ArgumentException e)

        {

            Console.WriteLine(1);

            Console.WriteLine(e);

        }

        catch (ArithmeticException e)

        {

            Console.WriteLine(2);

            Console.WriteLine(e);

        }

        catch (SystemException e)

        {

            Console.WriteLine(3);

            Console.WriteLine(e);

        }

        catch (Exception e)

        {

            Console.WriteLine(4);

            Console.WriteLine(e);

        }

    }

}

 

////////

 

728x90

설정

트랙백

댓글

728x90
SMALL

//例外はわる

using System;

 

class Lesson10

{

    public static void Main()

    {

    Console.WriteLine(1);

    int answer = Test(10);

    //10대신 0으로 입력하면 안 됨

    Console.WriteLine(3);

    Console.WriteLine(answer);

   

    }

   

    static int Test(int number)

    {

        Console.WriteLine(2);

        int answer = 100 / number;

     return answer;  

    }

}

//////////

/////////////////

// 例外はわる

using System;

 

class Lesson10

{

    public static void Main()

    {

  Console.WriteLine(1);

    try

    {

         int answer = Test(0);

    //10대신 0으로 입력하면 안 됨

    Console.WriteLine(3);

    Console.WriteLine(answer);

       

    }

    catch (DivideByZeroException e)

    {

        Console.WriteLine(4);

        Console.WriteLine(e);

    }

   

 

    }

   

    static int Test(int number)

    {

        Console.WriteLine(2);

        int answer = 100 / number;

     return answer;  

    }

}

/////////////

//

// 例外はわる

using System;

 

class Lesson10

{

    public static void Main()

    {

  Console.WriteLine(1);

    try

    {

         int answer = Test(5);

    //0으로 입력하면 1 2 3 5 8이라고 뜬다.  

//1을 출력하고, static으로 넘어가서 2를 출력.

//그 후 안으로 들어가서 3을 출력하고 쭉

    Console.WriteLine(7);

    Console.WriteLine(answer);

       

    }

    catch (DivideByZeroException e)

    {

        Console.WriteLine(8);

        Console.WriteLine(e);

    }

   

 

    }

   

    static int Test(int number)

    {

        Console.WriteLine(2);

        try

        {

            Console.WriteLine(3);

            int answer = 100 / number;

            return answer;

            Console.WriteLine(4);

           

        }

            catch (DivideByZeroException e)

    {

        Console.WriteLine(5);

        throw;

        //예외의 재throw

    }

    Console.WriteLine(6);

          

    }

}

///////

/////예외의 재 throw

////

///////

728x90

설정

트랙백

댓글

728x90
SMALL

// throwで意的に例外を投げよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        Console.WriteLine("Hello World");

 

        try

        {

            int number = 2;

            int answer = 100 / number;

            Console.WriteLine(answer);

            throw new DivideByZeroException();

            //2로 나누고 answer 50이 되지만, 예외처리를 발생시켜서 나오게 한다.

           

        }

        catch (DivideByZeroException e)

        {

            Console.WriteLine("0では割り算できません");

            Console.Error.WriteLine(e);

        }

        finally

        {

            Console.WriteLine("Hello C#");

        }

    }

}

 

////////////////

// throwで意的に例外を投げよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        Console.WriteLine("Hello World");

 

        try

        {

            int number = 2;

            int answer = 100 / number;

            Console.WriteLine(answer);

            throw new Exception("制エラ");

            //2로 나누고 answer 50이 되지만, 예외처리를 발생시켜서 나오게 한다.

            //DivideByZeroException에서 Exception으로 바꾸면 에러 발생

           

           

        }

        catch (DivideByZeroException e)

        {

            Console.WriteLine("0では割り算できません");

            Console.Error.WriteLine(e);

        }

        catch (Exception e)

        {

            Console.WriteLine("例外が生しました");

            Console.Error.WriteLine(e);

        }

       

        finally

        {

            Console.WriteLine("Hello C#");

        }

    }

}

////////////////////////

///과제

// throwで意的に例外を投げよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        Console.WriteLine("Hello World");

 

        try

        {

            int number = 2;

            int answer = 100 / number;

            Console.WriteLine(answer);

throw new DivideByZeroException();

        }

        catch (DivideByZeroException e)

        {

            Console.Error.WriteLine("0では割り算できません");

        }

        finally

        {

            Console.WriteLine("Hello C#");

        }

    }

}

728x90

설정

트랙백

댓글

728x90
SMALL

// 標準入力でプレイヤを選しよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        //플레이어를 배열로 기술한다

        string[] players = {"勇者","","魔法使い"};

        //입력 란에 0을 입력하면 용자, 1을 입력하면 전사, 2면 마법사용

       //10이라고 입력하면 안 됨

       

        //표준입력으로부터 정수를 입력

        var number = int.Parse(Console.ReadLine());

       

       

        //입력치에 응해 플레이어명 표시

        Console.WriteLine(players[number] + "はモンスタを倒した");

       

       

    }

}

////////////////////

 

// 標準入力でプレイヤを選しよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        //플레이어를 배열로 기술한다

        string[] players = {"勇者","","魔法使い","忍者"};

        //입력 란에 0을 입력하면 용자, 1을 입력하면 전사, 2면 마법사용,3이면 닌자

       

        try

        {

        //표준입력으로부터 정수를 입력

        var number = int.Parse(Console.ReadLine());

       

       

        //입력치에 응해 플레이어명 표시

        Console.WriteLine(players[number] + "はモンスタを倒した");

        }

        catch(IndexOutOfRangeException e)

        {

            Console.WriteLine("0から" + (players.Length -1) + "を入力してください。");

            Console.Error.WriteLine(e);

            //0부터 3까지 입력하라는 말이 된다.

           

        }

       

       

    }

}

////////////////

//

// 標準入力でプレイヤを選しよう

using System;

 

class Lesson10

{

    public static void Main()

    {

        //플레이어를 배열로 기술한다

        string[] players = {"勇者","","魔法使い","忍者"};

        //입력 란에 0을 입력하면 용자, 1을 입력하면 전사, 2면 마법사용,3이면 닌자

       

        try

        {

        //표준입력으로부터 정수를 입력

        var number = int.Parse(Console.ReadLine());

       

        

        //입력치에 응해 플레이어명 표시

        Console.WriteLine(players[number] + "はモンスタを倒した");

        }

        catch(IndexOutOfRangeException e)

        {

            Console.WriteLine("0から" + (players.Length -1) + "を入力してください。");

            Console.Error.WriteLine(e);

            //0부터 3까지 입력하라는 말이 된다.

           

        }

       

        catch(FormatException e)

        {

            Console.WriteLine("値を入力してください。");

            Console.Error.WriteLine(e);

        }

       

       

    }

}

 

/////////

728x90

설정

트랙백

댓글

728x90
SMALL

// じゃんけんプログラム

using System;

using System.Collections.Generic;

public class Hello{

    public static void Main(){

        // 標準入力から1行取得

        string line = Console.ReadLine(); //표준 입력에서 1행을 취득한다.

 

        // カンマで分割して、配列に代入

        string[] janken = line.Split(','); //,로 분할하여 배열에 대입한다.

 

        // 配列要素をランダムに

        var num = janken.Length; //표준 입력으로부터 읽어 들여서, 분할한 요소들을 나열함

        var random = new Random(); //랜덤 함수의 정의

        var rand = random.Next(num); //랜덤에 요소들 대입

 

 

        // ランダムに選んだ配列の要素を出力

        Console.WriteLine(janken[rand]);

    }

}

////

 

///

// おみくじプログラム

using System;

using System.Collections.Generic;

public class Hello{

    public static void Main(){

        // 標準入力から1行取得

        string line = Console.ReadLine();

 

        // カンマで分割して、配列に代入

        string[] omikuji = line.Split(',');

 

        // 配列の要素をランダムに選ぶ

        var num = omikuji.Length;

        var random = new Random();

        var rand = random.Next(num);

 

        // ランダムに選んだ配列の要素を出力

        Console.WriteLine(omikuji[rand]);

    }

}

//입력란에 大吉,中吉,,凶이라고 입력한다.

 

 

 

728x90

설정

트랙백

댓글

728x90
SMALL

using System;

public class Hello{

    public static void Main(){

        var data = Console.ReadLine();

        string [] enemies = data.Split(',');

       

        foreach(var str in enemies)

        {

            Console.WriteLine(str + "が現れた!");

           

        }

        var num = enemies.Length;

        Console.WriteLine("敵は" + num + "");

        var random = new Random();

        var rand = random.Next(num);

        var attack = enemies[rand];

}

}

///

 

 

///

using System;

public class Hello{

    public static void Main(){

        var data = Console.ReadLine();

        string [] enemies = data.Split(',');

       

        foreach(var str in enemies)

        {

            Console.WriteLine(str + "が現れた!");

           

        }

        var num = enemies.Length;

        Console.WriteLine("敵は" + num + "");

        var random = new Random();

        var rand = random.Next(num);

        var attack = enemies[rand];

       

        Console.WriteLine(attack + "心の一" + attack + "を倒した");

    }

}

//랜덤으로 몬스터를 쓰러뜨리는 코드

 

//

using System;

public class Hello{

    public static void Main(){

        var data = Console.ReadLine();

        string [] team = data.Split(',');

       

        data = Console.ReadLine();

        string [] enemies = data.Split(',');

       

        foreach(var str in enemies)

        {

            Console.WriteLine(str + "が現れた!");

           

        }

        var num = enemies.Length;

       

        Console.WriteLine("敵は" + num + "");

        var random = new Random();

        var rand = 0;

        var attack = "";

       

        foreach(var str in team)

        {

            rand = random.Next(num);

            attack = enemies[rand];

        Console.WriteLine(str + "の攻!");

        Console.WriteLine(attack + "心の一!");    }

       

    }

}

//각 몬스터에 데미지를 주고 그것을 출력하는 것이 가능하다.

//입력: 勇者,,魔法使い,忍者

//スライム,モンスタ,ドラゴン,魔王

728x90

설정

트랙백

댓글

728x90
SMALL

// 복수행 데이터를 읽어 들이기.

using System;

public class Program{

    public static void Main(){

        var moji = "";

 

        if( (moji = Console.ReadLine()) != null ) {

            Console.WriteLine("文字が入力されたね!");

        }

        else

        {

            Console.WriteLine("念入力なし");

        }

       

       

    }

}

//문자가 있으면 입력됐다고 뜨고, 아니면 안 됐다고 뜬다.

 

///

// 복수행 데이터를 읽어 들이기.

using System;

using System.Collections.Generic;

public class Program{

    public static void Main(){

       

    var team = new List<string>();

 string line;

 while ((line=Console.ReadLine()) !=null)

 {

     team.Add("hello" + line);

 }

        foreach(var str in team)

        {

            Console.WriteLine(str);

        }

       

    }

}

//데이터가 얼마나 있는 지 모르지만 읽어 들이는 것은 while문으로 실행한다.

///

 

///

// んだ複行を出力する

using System;

using System.Collections.Generic;

public class Hello{

    public static void Main(){

        var enemy = new List<string>();

 

        string line;

        while ((line=Console.ReadLine()) != null) {

             enemy.Add(line);

        }

 

        foreach(var str in enemy) {

             Console.WriteLine(str + "が現れた");

        }

    }

}

//적을 추가하여 적이 나타났다고 한다.

/////////////////////

// 行のカンマ切りデタを出力する

using System;

using System.Collections.Generic;

public class Hello{

    public static void Main(){

        string line;

        var enemy = new List<string>();

        while ((line=Console.ReadLine()) != null) {

            // ここに、文字列を分割して、出力するコドを書く

            enemy.Add(line);

        }

      

               foreach(var str in array)

               {

             Console.Write(str + "");

             Console.WriteLine("匹現れた");

        }

 

    }

}

///////////

//입력받은 문자를 이용해서 적이 나타난 것을 알려준다.

// 行のカンマ切りデタを出力する

using System;

using System.Collections.Generic;

public class Hello{

    public static void Main(){

   

       var team = new List<string>();

       string line; // 입력받을 값을 정의

      

        while ((line=Console.ReadLine()) != null)

        {

            // ここに、文字列を分割して、出力するコドを書く

        string[] enemy = line.Split(',');

         Console.WriteLine(enemy[0] + "" + enemy[1] + "匹現れた");

}

    }

}

////////////

using System;

public class Hello{

    public static void Main(){

        var data = Console.ReadLine();

        string [] enemies = data.Split(',');

       

        foreach(var str in enemies)

        {

            Console.WriteLine(str + "が現れた");

           

        }

       

    }

}

//입력 란에는 スライム,モンスタ,ドラゴン,魔王 리스트를 입력한다.

/////////

728x90

설정

트랙백

댓글

728x90
SMALL

//括弧を使った代入式の順番の仕組み

using System;

using System.Collections;

public class Program{

    public static void Main(){

        var d = "";

        var e = "魔法使い";

        var f = "忍者";

        var g = "";

        // ここにdの中身が魔法使い侍になるようにコドを記述する

        d = (e + g);

        Console.WriteLine("dの中身は" + d);

    }

}

//괄호를 사용하는 대입식

//

//ifを使った代入式の仕組み

using System;

using System.Collections;

public class Program{

    public static void Main(){

        var g = false;

        var h = "勇者";

 

        // ここに勇者を識別するコドを記述する

        g = (h != null); // g는 용자로 됨

 

        if((h = Console.ReadLine())!=null ){

            Console.WriteLine(g + " あなたは勇者だ");

        }

        else

        {

            Console.WriteLine(g + " あなたは勇者だ");

        }

    }

}

///////// if를 사용하는 대입식

 

728x90

'프로그래밍' 카테고리의 다른 글

C# paiza 32 - Split을 활용한 출력  (0) 2020.05.13
C# paiza 31 - 복수행 데이터 읽기  (0) 2020.05.13
C# paiza 29 - 대입식2  (0) 2020.05.10
C# paiza 28 - 대입식1  (0) 2020.05.10
C# paiza 27 - Split(스플릿) 분할  (0) 2020.05.10

설정

트랙백

댓글