[13/100] 240426
package com.kosta.lec;
public class 알고리즘문제푸는용도 {
public static void main(String[] args) {
// System.out.println("한줄찍기");
//
// for (int i = 0; i < 5; i++) // 한줄찍기
// {
// System.out.print('*');
// }
//
// System.out.println();
// System.out.println("사각형으로 5X5 별찍기");
//
// for (int i = 0; i < 5; i++) // 사각형으로 5X5 별찍기
// {
// for (int j = 0; j < 5; j++) {
// System.out.print('*');
// }
// System.out.println(" ");
// }
//
// System.out.println();
// System.out.println("직각삼각형 별찍기");
//
// for (int i = 0; i < 5; i++) // 직각삼각형 별찍기
// {
// for (int j = 5; j > i; j--) {
// System.out.print('*');
// }
// System.out.println(" ");
// }
//
// System.out.println();
// System.out.println("리버스 별찍기");
//
// for (int i = 0; i < 5; i++) // 리버스 별찍기
// {
// for (int j = 0; j < i + 1; j++) {
// System.out.print('*');
// }
// System.out.println(" ");
// }
//
// System.out.println();
// System.out.println("5시별찍기");
//
//
// for (int i = 5; i > 0; i--) // 5시별찍기
// {
//
// for (int j = 0; j < i - 1 ; j++) //빈칸 출력
// {
// System.out.print(' ');
// }
//
// for(int k = 5; k > i - 1; k--)
// {
// System.out.print('*');
// }
// System.out.println(" ");
// }
//
// System.out.println();
// System.out.println("1시별찍기");
//
//
// for (int i = 5; i > 0; i--) // 1시별찍기
// {
//
// for (int j = 5; j > i ; j--) //빈칸 출력
// {
// System.out.print(' ');
// }
//
// for(int k = 0; k < i ; k++)
// {
// System.out.print('*');
// }
// System.out.println(" ");
// }
//
// System.out.println();
// System.out.println("센터 별찍기");
//
// int num = 15; // 센터 별찍기
// for (int i = 0; i < num; i++)
// {
// for (int j = 0; j < num - i - 1; j++) //빈칸출력
// {
// System.out.print(' ');
// }
//
// for (int k = 0; k < 2 * i + 1; k++) // 각 행은 2N+1개 만큼 출력
// {
// System.out.print('*');
// }
// System.out.println("");
// }
//
// System.out.println();
// System.out.println("리버스 센터 별찍기");
//
// for (int i = 0 ; i < num; i++) //리버스 센터 별찍기
// {
// for (int j = 0; j < i; j++) //빈칸출력
// {
// System.out.print(' ');
// }
//
// for (int k = 0; k < 2 * (num - i) - 1; k++) //별출력
// {
// System.out.print('*');
// }
// System.out.println("");
// }
//1~20까지 정수 중 2 또는 3의 배수가 아닌 수들의 총합
int result1 = 0;
System.out.println("1번정답");
for(int z = 1; z <= 20 ; z++)
{
if( z % 2 != 0 && z % 3 !=0)
{
result1 += z;
}
}
System.out.println(result1);
//1+ -2 +3 -4 + ... , 과 같은 식으로 계속 더해갔을때 몇까지 더해야 총합이 100이상인지
int result2 = 0;
int i = 1;
int tmp = 0;
while (result2 < 100)
{
result2 += i;
if(tmp > 0) tmp = i;
else tmp = i * -1;
if(i > 0)
{
++i;
i *= -1;
}
else
{
i *= -1;
++i;
}
}
System.out.println("2번정답");
System.out.println("시행횟수 = " + tmp);
// 다음의 for문을 while문으로 변경
for(int k=0; k<=10; k++) {
for(int j=0; j<=k; j++)
System.out.print("*");
System.out.println();
}
System.out.println("3번정답");
int cnt = 11;
int cnt2 = 0;
while(cnt > 0)
{
cnt2 = 12-cnt;
while (cnt2 > 0)
{
System.out.print('*');
--cnt2;
}
System.out.println();
--cnt;
}
System.out.println();
System.out.println("4번정답");
//두 개의 주사위를 던졌을 때 눈의 합이 6이 되는 모든 경우의 수를 출력
for (int d = 1; d < 6; d++)
{
for (int e = 1; e<6;e++)
{
if(d + e == 6)
{
System.out.print("("+d + ", " + e + ")");
}
}
}
}
}
오늘은 각종 반복문의 문제를 해결했다.