Run Swift Online

Write, run, and debug Swift code online using a command-line Swift environment. Manage multiple files, save your workspace, and share code without installing Xcode.

사전 설치 라이브러리
🚀 18,944 총 실행 (512 이번 달)
퍼가기
출력

Python 코딩 챌린지로 연습하기

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

모든 Python 챌린지
쉬움

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

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

Distance Between Points

Compute the straight-line distance between two points.

배우는 내용 피타고라스 정리제곱근
BeginnerFunctionsLearning-pathmath
쉬움

세 수의 평균

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

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

Days in a Month

Return how many days a month has, including leap years.

배우는 내용 달력 규칙도우미 함수
BeginnerConditionsFunctionsLearning-path
쉬움

두 벡터의 내적

두 벡터를 원소별로 곱한 뒤 모두 더합니다. 모든 뉴런의 핵심 연산입니다.

배우는 내용 벡터내적
신경망ai머신 러닝
쉬움

소수 판별

숫자가 소수인지 판별하세요.

배우는 내용 나누어떨어짐 판별반복문 최적화
BeginnerLoopsNumbersStudent-beginner
쉬움

암스트롱 수

숫자가 각 자릿수를 자릿수 개수만큼 거듭제곱한 합과 같은지 확인하세요.

배우는 내용 자릿수 추출거듭제곱
BeginnerNumbersStudent-beginner
쉬움

Largest of Three

Pick the largest of three numbers without a built-in max.

배우는 내용 비교조건 결합
BeginnerConditionsLearning-path
쉬움

Number Triangle

Build a triangle of increasing numbers.

배우는 내용 길어지는 행행을 넘나드는 카운터
BeginnerLearning-pathNested-loopsPatterns
쉬움

Row Sums

Add up every row of a grid.

배우는 내용 2차원 리스트중첩 반복문
BeginnerGridsLearning-path
쉬움

Sum of Odd Numbers

Add every odd number up to a limit.

배우는 내용 for 반복문누적 변수
BeginnerLearning-pathLoops
쉬움

할 일 목록

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

배우는 내용 타입 컬렉션레코드
BeginnerSimulationStrings

🍎 이 Swift 온라인 실행기 소개

CodeUtility Swift Executor는 브라우저에서 곧바로 Swift 코드를 작성하고 실행할 수 있게 해줍니다 - Xcode, SDK, macOS 설정이 전혀 필요 없습니다. 격리된 샌드박스에서 실제 Swift 컴파일러를 실행하여 정확하고 네이티브한 Swift 동작을 제공합니다.

이 도구는 여러 Swift 버전 - 5.7, 5.9, 그리고 최신 릴리스를 - 지원하여 새로운 언어 기능을 탐색하고 기존 Swift 코드베이스와의 호환성을 유지할 수 있는 유연성을 제공합니다.

Swift 문법을 학습하거나 알고리즘을 테스트하고, iOS, macOS, 서버 사이드 Swift 코드를 실험하려는 개발자에게 안성맞춤이며, 로컬 도구나 시뮬레이터를 설치할 필요가 없습니다.

각 스니펫은 컨테이너화된 Swift 환경에서 안전하게 실행되어, 실제 컴파일러 피드백과 안전한 코드 실행을 보장합니다.

단순한 코드 실행기 그 이상

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

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

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

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

💡 초보자를 위한 Swift 기초 가이드

1. 변수와 상수 선언

Swift에서는 변수에 var, 상수에 let을 사용합니다.

var age = 30
let pi = 3.14159
var name = "Alice"
let isActive = true

// 상수는 다시 할당할 수 없습니다
// pi = 3.14 // ❌ 오류

2. 조건문 (if / switch)

로직에는 if, else if, else를 사용하고, 여러 분기에는 switch를 사용합니다.

let number = 2
if number == 1 {
    print("하나")
} else if number == 2 {
    print("둘")
} else {
    print("그 외")
}

switch number {
case 1:
    print("하나")
case 2:
    print("둘")
default:
    print("그 외")
}

3. 루프

Swift는 for-in, while, repeat-while 루프를 지원합니다.

for i in 0..<3 {
    print(i)
}

var n = 3
while n > 0 {
    print(n)
    n -= 1
}

4. 배열

배열은 순서가 있는 값들의 모음을 저장합니다.

var numbers = [10, 20, 30]
print(numbers[1])

5. 배열 조작

append나 removeLast 같은 배열 메서드를 사용하세요.

var nums = [1, 2, 3]
nums.append(4)
nums.removeLast()

for n in nums {
    print(n)
}

6. 콘솔 입출력

출력에는 print()를 사용합니다. 입력은 Swift Playgrounds나 Xcode에서 추가 작업이 필요합니다.

let name = "Alice"
print("안녕하세요, \(name)")

7. 함수

매개변수와 반환 값을 가진 재사용 가능한 함수를 정의하세요.

func add(a: Int, b: Int) -> Int {
    return a + b
}

print(add(a: 3, b: 4))

8. 딕셔너리

딕셔너리는 키-값 쌍을 저장합니다.

var ages = ["Alice": 30]
print(ages["Alice"] ?? 0)

9. 오류 처리

Swift는 오류 처리에 do-catch를 사용합니다.

enum MyError: Error {
    case runtimeError(String)
}

do {
    throw MyError.runtimeError("문제가 발생했습니다")
} catch let error {
    print(error)
}

10. 파일 I/O

Swift는 파일 I/O에 FileManager 또는 String 메서드를 사용합니다.

let text = "안녕 파일"
try text.write(toFile: "file.txt", atomically: true, encoding: .utf8)
let content = try String(contentsOfFile: "file.txt")
print(content)

11. 문자열 처리

count, contains, uppercased() 등의 메서드를 사용하세요.

let text = "안녕 세상"
print(text.count)
print(text.contains("세상"))
print(text.uppercased())

12. 클래스 & 객체

Swift는 class와 init을 사용해 OOP를 지원합니다.

class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
    func greet() {
        print("안녕하세요, 저는 \(name)입니다")
    }
}

let p = Person(name: "Alice")
p.greet()

13. 옵셔널

Swift는 ?와 !로 옵셔널 값을 다룹니다.

var name: String? = "Alice"
print(name ?? "알 수 없음")

if let unwrappedName = name {
    print(unwrappedName)
}