package Array;
import java.util.Scanner;
public class Ex1 {
public static void main(String[] args) {
String[]name={"james","tomas","adward","crystal","leepi"};
int[] height =new int[name.length];
Scanner sc = new Scanner(System.in);
int total =0;//total값 초기화.
for(int i=0; i<name.length; i++){
System.out.println(name[i]+"신장을 입력하세요");
height[i]=sc.nextInt(); //저장된 사람만 순서대로 신장 출력
total += height[i]; //total 변수에 출력된 신장 저장
}
for(int i=0; i< name.length;i++){
System.out.println(name[i] +"의 키는" +height[i]+"입니다.");//순서대로 입력받은 정보 출력
}
System.out.println("신장의 합: " + total);
System.out.println("신장의 평균: " +total/ name.length);
}
}
package Array;
import java.util.Scanner;
public class Ex2 {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
System.out.print("양의 정수 10개 입력:");
int[] number=new int[10];
for(int i=0; i<number.length; i++){ //number[i]의 값이 number.length만큼 출력
number[i]=sc.nextInt();
}
System.out.print("3의 배수: ");
for(int i=0; i< number.length;i++){
if(number[i]%3==0){
System.out.print(number[i] + ",");
}
}
}
}
package Array;
import java.util.Scanner;
public class Ex3 {
public static void main(String[] args) {
String[] subject = {"Java", "Python", "C++", "Jsp", "html"};
int[] score = {100, 88, 76, 62, 40};
Scanner sc =new Scanner(System.in);
while (true) {
System.out.print("과목명을 입력하세요:");
String name = sc.next();
for(int i=0; i<subject.length; i++) {
if (subject[i].equals(name)) {
System.out.println(subject[i] + "의 점수: " + score[i]);
}
}
if (name.equals("그만")) {
break;
}
}
}
}
package Array;
public class Ex4 {
public static void main(String[] args) {
int[] arr = { 10, 20, 30, 50, 3, 60, -3 };
System.out.println(arr[1]); //20; 무조건 배열은 0부터 시작한다.
}
}
package Array;
public class Ex5 {
public static void main(String[] args) {
int[] arr = { 10, 20, 30, 50, 3, 60, -3 };
for(int i=0; i< arr.length; i++){
if(arr[i]==60){
System.out.println("정수 60은 "+i+"번째에 있습니다.");//정수 60은 5번째에 있습니다.
}
}
}
}
package Array;
//arr 배열 안의 모든 값을 더하고, 총합과 평균을 출력해보자.
public class Ex6 {
public static void main(String[] args) {
int total =0;
double average =0;
int[] arr = {10, 20, 30, 50, 3, 60, -3};
for(int i=0; i< arr.length; i++){
total+=arr[i];
}
average+=(double)total/ arr.length;
System.out.println("arr배열의 합은: "+total+ "이며 평균은: "+average+"입니다.");
//arr배열의 합은: 170이며 평균은: 24.29입니다.
}
}
package Array;
public class Ex7 {
public static void main(String[] args) {
//arr 배열의 인덱스가 3인 곳은 출력하지 말고, 나머지만 출력해보자.
int[] arr = { 10, 20, 30, 50, 3, 60, -3 };
for(int i=0; i<arr.length; i++){
if(arr[i]==arr[3])
continue;
System.out.println("arr["+ i +"]"+"="+arr[i]);
}
}
}
package Array;
public class Ex8 {
public static void main(String[] args) {
int[] arr = { 10, 20, 30, 50, 3, 60, -3 };
int max=arr[0];
int min =arr[0];
for(int i=0; i<arr.length; i++){
if(arr[0]<arr[i]) //arr[0]기준으로 큰값이 있으면 max로 입력 반복
max=arr[i];
if(arr[0]>arr[i]) //arr[0]기준으로 작값이 있으면 min로 입력 반복
min=arr[i];
}
System.out.println("최대값은: "+max + "최소값은: "+min);
}
}
package Array;
public class Ex9 {
public static void main(String[] args) {
char[]arr=new char[26];
for(int i=0; i<arr.length; i++){
arr[i]=(char)(65+i);//'A'는 65기때문에 65대입
System.out.print(arr[i]+",");
}
}
}
package Array;
public class Ex9 {
public static void main(String[] args) {
char[]arr=new char[26];
for(int i=0; i< arr.length; i++){
arr[i]=(char)(90-i);//'A'는 65기때문에 65대입
System.out.print(arr[i]+",");
}
}
}
또는
package Array;
public class Ex9 {
public static void main(String[] args) throws ArrayIndexOutOfBoundsException{
char[]arr=new char[26];
for(int i= arr.length-1; i>=0; i--){
arr[i]=(char)(65+i);//'A'는 65기때문에 65대입
System.out.print(arr[i]+",");
}
}
}
이 코드에 대해서 고민을 해보았는데 왜 26번쨰부터 0까지인데 출력조차 안되는 거지?
이생각을 해보았는데 그렇게 하나하나 다시 살펴본 결과 arr.length의 값은 26인데
무조건 배열은 0부터 시작이니 우리는 초기화식을 i=25라고 하고 조건식은 0이 들어가야하므로 >=를 붙여줬습니다.