겉바속촉
random 연습하기 본문
728x90
반응형
안녕하세요~ 겉바속촉입니다!^^!
이번에는 random에 대해서 알아볼게요:)
그 전에 다음 링크로 들어가셔서 java.util -> random을 클릭하셔서
종류별로 어떠한 코드들이 있는 지 알아봅시다
https://docs.oracle.com/javase/7/docs/api/
랜덤수를 가져오기 위해서는
Math.random(); 을 입력해주셔야하는데요 ----> 0.0이상 1.0미만의 double형이 나옵니다
그래서 다음과 같이 연습해볼거에요:)
1. 10개의 random수 출력
2. 0~9 범위의 random수 출력 : 10곱해주기
3. 0~99 범위의 random수 출력 : 100곱해주기
4. 1~10 범위의 random수 출력 : 10곱한 후에 1더해주기
5. 1~45 범위의 random수 출력 : 45곱한 후에 1더해주기
6. 65~90 범위의 random수 출력 : 26곱한 후에 65더해주기
---> 65부터라서 나중에 65를 더하는 것은 알고 있습니다.
---> 곱해주는 수는 ( 65 + 어떤 수 ) - 1 = 마지막 수 로 생각해서 어떤 수인 26을 곱해주시면 됩니다.
package day0528;
public class RandomTest_10 {
public static void main(String[] args) {
//Math.random() 함수는 0.0이상 1.0미만의 double형의 실수값을 반환
//10개의 난수 발생
for(int i=1;i<=10;i++)
{
double n=Math.random();
System.out.println(n);
}
System.out.println("-------------------------------------");
//0~9까지의 난수를 발생
for(int i=1;i<=10;i++)
{
int n = (int)(Math.random()*10);
System.out.println(n);
}
System.out.println("-------------------------------------");
//0~99까지의 난수를 발생
for(int i=1;i<=10;i++)
{
int n = (int)(Math.random()*100);
System.out.println(n);
}
System.out.println("-------------------------------------");
//1~10까지의 난수를 발생
for(int i=1;i<=10;i++)
{
int n = (int)(Math.random()*10+1);
System.out.println(n);
}
System.out.println("-------------------------------------");
//1~45까지의 난수를 발생
for(int i=1; i<=10; i++)
{
int n=(int)(Math.random()*45+1);
System.out.println(n);
}
System.out.println("-------------------------------------");
//65~90까지의 난수를 발생
for(int i=1; i<=10; i++)
{
int n = (int)(Math.random()*26+65);
System.out.println(n);
}
}
}
간단한 게임을 만들어 볼게요:)
random수를 우리가 맞춰보는 게임입니다!^^!
우리가 입력한 수가 random수보다 큰지 작은지 알려주는 코드를 작성해서
random수가 입력이 되면 반복문을 종료시킬거에요
package day0528;
import java.util.Scanner;
public class RandomSuMatch_11 {
public static void main(String[] args) {
//import
Scanner sc= new Scanner(System.in);
//변수
int rnd =(int)(Math.random()*20)+1;
int cnt=0;
int su;
//수식
while(true)
{
cnt++;
System.out.println(cnt+":");
System.out.println("랜덤수 맞추기");
su = sc.nextInt();
//랜덤수랑 입력수랑 비교
if(su>rnd)
{
System.out.println(su+"보다 작습니다");
}
else if(su<rnd)
{
System.out.println(su+"보다 큽니다");
}
else
{
System.out.println("맞았습니다 정답은 "+rnd+"입니다");
break;
}
}
System.out.println("프로그램 종료");
}
}
위의 콘솔창처럼 랜덤수를 계속해서 맞춰보세요:)
위와 같이 나왔다면 성공!^^!
728x90
반응형
'IT일기(하반기) > 블록체인' 카테고리의 다른 글
1차원 배열 (0) | 2020.05.29 |
---|---|
여러가지 연습예제 (0) | 2020.05.28 |
while, if를 사용한 구구단 (0) | 2020.05.28 |
중첩 for문 (0) | 2020.05.28 |
string 연습하기 (0) | 2020.05.28 |