Operators and Math

CodeUtility 온라인 C# IDE에서 Operators and Math을(를) 확인하고 실행하며 수정해 보세요.

사전 설치 라이브러리
🚀 351,515 총 실행 (769 이번 달)
출력

C# 코딩 챌린지로 연습하기

이 에디터에서 직접 문제를 풀고, 샘플 테스트 실행 및 제출, AI 코드 리뷰를 받아보세요.

모든 C# 챌린지
쉬움

세 수의 평균

세 개의 정수를 평균하세요.

배우는 내용 산술나눗셈
BeginnerLearning-pathVariables
쉬움

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

배우는 내용 산술반환값
BeginnerLearning-pathVariables
쉬움

고객과 주문 조인하기

LINQ Join처럼 고객과 주문을 연결하고 고객별 총 지출을 보고합니다.

배우는 내용 LINQ Join그룹화
ArraysSorting
아직 풀이가 없습니다
쉬움

할 일 목록

할 일 목록을 관리합니다. 추가하고, 완료로 표시하고, 삭제한 뒤 남은 일을 알려 줍니다.

배우는 내용 타입 컬렉션레코드
BeginnerSimulationStrings
아직 풀이가 없습니다
쉬움

연결 리스트 연산

연결 리스트를 흉내 냅니다. 양 끝에 추가하고, 앞에서 또는 값으로 삭제하고, 뒤집습니다.

배우는 내용 연결 리스트시뮬레이션
Data-structuresSimulation
아직 풀이가 없습니다
쉬움

평평한 JSON 객체의 합

정수 값을 가진 평면 JSON 객체를 파싱하고 값들의 합을 구하세요.

배우는 내용 JSON 파싱문자열 나누기
ParsingStrings
아직 풀이가 없습니다
쉬움

WhenAll 총 소요 시간

각 작업 그룹이 Task.WhenAll과 함께 함께 실행되고 그룹은 하나씩 순서대로 실행될 때, 프로그램이 얼마나 걸리는지 구하세요.

배우는 내용 Async/awaitTask.WhenAll
ArraysBeginner
아직 풀이가 없습니다
보통

병렬 작업 완료 순서

최대 k개씩 동시에 작업을 실행하고, 완료되는 순서를 보고합니다.

배우는 내용 동시성우선순위 큐
SimulationSorting
아직 풀이가 없습니다
보통

최솟값 스택

push나 pop 이후에도 가장 작은 원소를 즉시 보고하는 스택을 만듭니다.

배우는 내용 스택최솟값 추적
Data-structuresStacks
아직 풀이가 없습니다
쉬움

중복 없는 레코드

값이 같은 중복 레코드를 제거하고, 각 값의 첫 번째 항목만 순서대로 유지합니다.

배우는 내용 레코드값 기반 동등성
BeginnerStrings
아직 풀이가 없습니다
쉬움

선택한 키로 정렬하기

실행 중에 고른 비교자로 사람을 이름이나 나이순으로 정렬하고 동점은 일관되게 처리합니다.

배우는 내용 비교자정렬
ArraysSorting
아직 풀이가 없습니다
보통

주간 급여

고정급, 시급, 수수료 직원의 한 주 급여를 각자의 규칙대로 합산합니다.

배우는 내용 다형성초과 근무 계산
ParsingSimulationmath
아직 풀이가 없습니다

🔷 C# / .NET 온라인 실행기 소개

CodeUtility C# Executor는 브라우저에서 바로 실제 C# 코드를 작성하고 실행할 수 있게 해 줍니다 - 설치, Visual Studio 설정, .NET SDK가 필요 없습니다. .NET 런타임과 최신 C# 언어 버전(예: C# 9 이상)을 지원하는 안전한 샌드박스로 구동됩니다.

이 도구는 내부적으로 dotnet-script를 사용해 진짜 .NET 동작으로 코드를 컴파일하고 실행합니다. LINQ, async/await, 패턴 매칭, 제네릭 같은 기본부터 고급 C# 기능까지 자유롭게 실험해 보세요.

간단한 스크립트, 함수, 로직 흐름을 테스트하거나 클래스, 구조체, 상속, 인터페이스 같은 개념을 탐구할 수 있습니다 - 모두 깔끔하고 방해 요소 없는 코딩 환경에서요.

C#을 학습하든, 알고리즘을 시험해 보든, .NET 기능을 실험하든, CodeUtility C# Executor는 어떤 브라우저에서든 C# 코드를 즉시 실행할 수 있는 빠르고 안전하며 신뢰할 수 있는 방법을 제공합니다.

단순한 코드 실행기 그 이상

하나의 실행기에서 다중 파일 편집기, 격리된 실행 터미널, 런타임별 라이브러리, 영구 작업 공간, 공유 및 실시간 협업을 이용하세요.

이 실행기는 어떻게 사용하나요?

런타임을 선택하고 파일을 열거나 만든 다음 코드를 작성하고 실행을 선택하세요. 출력은 터미널에 표시되며, 로그인한 사용자는 작업 공간에 파일을 보관하고 라이브러리를 설치하며 공유를 통해 협업할 수 있습니다.

  1. 버전을 선택하고 현재 파일을 편집하거나 작업 공간의 다른 파일을 여세요.
  2. 코드를 실행하고 요청 시 터미널에 입력한 다음 저장된 실행 기록을 확인하세요.
  3. 작업에 둘 이상의 코드 조각이 필요하면 라이브러리, 작업 공간 도구, 공유 및 채팅을 사용하세요.

💡 위에서 바로 시도해 볼 수 있는 C# 기본 개념과 예제

1. 변수와 상수 선언

C#는 강한 타입의 변수 선언을 사용합니다. 컴파일 타임 상수에는 const, 런타임 상수에는 readonly를 사용하세요.

int age = 30;
double pi = 3.14159;
char grade = 'A';
string name = "Alice";
bool isActive = true;

// 상수
const int MaxUsers = 100;
const string Company = "CodeUtility";

2. 조건문 (if / switch)

제어 흐름에는 if, else if, switch를 사용하세요.

int x = 2;
if (x == 1)
{
    Console.WriteLine("One");
}
else if (x == 2)
{
    Console.WriteLine("Two");
}
else
{
    Console.WriteLine("Other");
}

switch (x)
{
    case 1:
        Console.WriteLine("One");
        break;
    case 2:
        Console.WriteLine("Two");
        break;
    default:
        Console.WriteLine("Other");
        break;
}

3. 반복문

C#는 for, while, foreach 반복문을 지원합니다.

for (int i = 0; i < 3; i++)
{
    Console.WriteLine(i);
}

int n = 3;
while (n > 0)
{
    Console.WriteLine(n);
    n--;
}

4. 배열

배열은 동일한 타입의 요소를 고정 크기로 저장합니다.

int[] numbers = { 10, 20, 30 };
Console.WriteLine(numbers[1]);

5. 리스트 조작

동적 컬렉션에는 List<T>를 사용하세요.

List<int> nums = new List<int> { 1, 2, 3 };
nums.Add(4);
nums.Remove(2);

foreach (int n in nums)
{
    Console.Write(n + " ");
}

6. 콘솔 입력/출력

기본 I/O에는 Console.WriteLine과 Console.ReadLine을 사용하세요.

Console.Write("Enter your name: ");
string name = Console.ReadLine();
Console.WriteLine($"Hello, {name}!");

7. 함수

반환 타입, 이름, 매개변수를 사용해 메서드를 정의합니다.

int Add(int a, int b)
{
    return a + b;
}

Console.WriteLine(Add(3, 4));

8. 딕셔너리

Dictionary<TKey, TValue>는 키-값 쌍을 저장합니다.

Dictionary<string, int> ages = new Dictionary<string, int>();
ages["Alice"] = 30;
Console.WriteLine(ages["Alice"]);

9. 예외 처리

실행 시 오류는 try, catch, finally로 처리합니다.

try
{
    throw new Exception("Something went wrong");
}
catch (Exception ex)
{
    Console.WriteLine(ex.Message);
}

10. 파일 입출력

파일 작업에는 File과 StreamReader/StreamWriter를 사용하세요.

File.WriteAllText("file.txt", "Hello File");
string text = File.ReadAllText("file.txt");
Console.WriteLine(text);

11. 문자열 처리

C# 문자열은 Length, Substring, Contains 같은 메서드를 지원합니다.

string message = "Hello World";
Console.WriteLine(message.Length);
Console.WriteLine(message.Substring(0, 5));
Console.WriteLine(message.Contains("World"));

12. 클래스와 객체

C#는 클래스와 객체를 통해 객체 지향 프로그래밍을 지원합니다.

class Person
{
    public string Name;
    public Person(string name) => Name = name;
    public void Greet() => Console.WriteLine($"Hi, I'm {Name}");
}

Person p = new Person("Alice");
p.Greet();