Dart의 for 반복문 사용
- 표준 loop 방법
반복 카운터 동안 loop 실행
void main() {
String message = 'Dart is fun';
String chgUpper = "";
//반복카운터(문자열 길이)만큼 For 문 돌면서 대문자 변환
for (var i = 0; i < message.length; i++) {
chgUpper += message[i].toUpperCase();
}
print(chgUpper); //DART IS FUN
}
- Iterable 유형 반복 시 사용 방법
List 또는 Set과 같은 Iterable 유형을 반복할 때 현재 반복 카운터를 알 필요가 없다.
이 경우 더 깔끔한 코드를 위해 for-in 루프를 사용한다.
void main() {
//List 또는 Set과 같은 Iterable 유형 반복 시 반복 카운터 없이 사용
//이 경우 더 깔끔한 코드로 for-in 루프를 사용한다.
List candidates = ['yuneene','yun','lee'];
for (final candidate in candidates) {
print(candidate);
/*
yuneene
yun
lee
*/
}
}
Dart의 while 문 사용
표준 loop 방법
- while (조건문) 사용 : loop 전 조건 판단
void main() {
String message = 'Dart is fun';
String chgUpper = "";
int i = 0;
//반복카운터(문자열 길이)만큼 while 문 돌면서 대문자 변환
while (i < message.length) {
chgUpper += message[i].toUpperCase();
i++;
}
print(chgUpper); //DART IS FUN
}
- while(true)과 break 사용
void main() {
String message = 'Dart is fun';
String chgUpper = "";
int i = 0;
//반복카운터(문자열 길이)만큼 while 문 돌면서 대문자 변환
//조건에 걸릴 때 break 사용
while (true) {
if (i >= message.length) {
break;
}
chgUpper += message[i].toUpperCase();
i++;
}
print(chgUpper); //DART IS FUN
}
- do ~ while (조건문); 사용
- loop 이후에 조건 판단
void main() {
String message = 'Dart is fun';
String chgUpper = "";
int i = 0;
//반복카운터(문자열 길이)만큼 while 문 돌면서 대문자 변환
do {
chgUpper += message[i].toUpperCase();
i++;
} while (i < message.length);
print(chgUpper); //DART IS FUN
}
▶ for 조건문 연습 백준 문제 풀이
- 백준 사이트 컴파일 언어에는 Dart는 없다.
- 코딩 연습용
☞ 백준 사이트 : https://www.acmicpc.net/problem/2446
//입력을 받기하기 위해서는 dart:io 라이브러리를 import 한다.
import 'dart:io';
void main() {
int? N = int.parse(stdin.readLineSync()!);
int tLine = 2*N-1;
String star = "";
for (int i=0; i < tLine; i++) {
star = "";
if (i < N) {
for (int j=0; j < i; j++) star += " ";
for (int j=0; j < tLine-(i*2); j++) star += "*";
print(star);
} else {
for (int j=0; j < tLine-i-1; j++) star += " ";
for (int j=0; j < ((i*2)-tLine) + 2; j++) star += "*";
print(star);
}
}
}
/*
5
*********
*******
*****
***
*
***
*****
*******
*********
*/
▶ while 조건문 연습 백준 문제 풀이
☞ 백준 사이트 : https://www.acmicpc.net/problem/2522
- while 조건문 사용
//입력을 받기하기 위해서는 dart:io 라이브러리를 import 한다.
import 'dart:io';
void main() {
//while 조건문 사용
int N = int.parse(stdin.readLineSync()!);
int tLine = 2*N-1;
int i = 1;
String star = "";
while (i <= tLine) {
star = "";
if (i <= N) {
for (int j=0; j<N-i; j++) star += " ";
for (int j=0; j<i; j++) star += "*";
print(star);
} else {
for (int j=0; j<i-N; j++) star += " ";
for (int j=0; j<(N-(i-N)); j++) star += "*";
print(star);
}
i += 1;
}
}
/*
3
*
**
***
**
*
*/
- while 조건문 break 사용
//입력을 받기하기 위해서는 dart:io 라이브러리를 import 한다.
import 'dart:io';
void main() {
//while break 사용
int N = int.parse(stdin.readLineSync()!);
int tLine = 2*N-1;
int i = 1;
String star = "";
while (true) {
star = "";
if (i > tLine) break; //조건 break 사용
if (i <= N) {
for (int j=0; j<N-i; j++) star += " ";
for (int j=0; j<i; j++) star += "*";
print(star);
} else {
for (int j=0; j<i-N; j++) star += " ";
for (int j=0; j<(N-(i-N)); j++) star += "*";
print(star);
}
i += 1;
}
}
/*
3
*
**
***
**
*
*/
'코딩라이브러리 > Dart' 카테고리의 다른 글
[Dart] 람다 함수 사용 lambda (with 백준 1181) (0) | 2024.07.18 |
---|---|
[Dart] if, swich 조건문 (with 백준 1330) (0) | 2024.06.18 |
dart 은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치파일이 아닙니다 (with 안드로이드 스튜디오) (0) | 2024.06.12 |
[Dart] 코딩 연습 입출력 코드 방법 (0) | 2024.06.10 |
[Dart] 변수 종류, 널(null) 변수 디폴트 처리 (1) | 2024.06.04 |