본문 바로가기
비트 장기/JAVA

7/16 수업(class 복습, 예제)

by woohyun22 2018. 7. 16.

//배열관련 for문은 분리시켜서 풀어줘야된다.


함수 콜은 변수명.함수명 변함

+= s= 반대로

우박수 a==1일떄 2로 나눴을떄 나머지면


syso에서 ln뺴주면 가로로 나열됨


삼항연산 형식

a=(조건)?2:3;


배열 형식

int ar[] = new int[7];-인트뉴인트

int br[] = {1,2,3,4,5};


package pack2;

class Tiger{//함수 = 메소드,


int a,b,c;

Tiger(){

System.out.println("생성자콜");

}

void func01() {

System.out.println("함수1번이 콜되었습니다.");

}

void func02() {

System.out.println("함수2번이 콜되었습니다.");

}

}

public class asdf {

public static void main(String[] args) {

Tiger t1 = new Tiger();

System.out.println(t1.a);

for (int i = 0; i < 3; i++) {

t1.func01();//콜은 클래스 변수이름.함수이름 - 변.함

}

}

}

우박수 


void func04() {

int a=35;

while(true) {

System.out.println(a);

if(a==1) {

System.out.println("우박수끝");

break;

}

if(a%2==0) {

a=a/2;

}else

a=3*a+1;

}

}


void func05() {

//int타입의 변수 7개를 배열로 선언하세요

//0~10까지의 숫자들을 7개의 배열에 채워넣으시오

//배열안의 모든 내용을 출력하세요

/*int s=0;

int ar[] = new int[7];

System.out.println("숫자 7개를 입력하시오");

for (int i = 0; i < ar.length; i++) {

int rn = new Random().nextInt(10);

System.out.print(rn+" ");

s +=rn;

}

System.out.println();

System.out.println(s);*///배열문제는 다 분리시켜서 풀어야됨 for문들

//위는 잘못된 코드 어쩌다가 걸린 코드

int ar[]=new int[7];

for (int i = 0; i < ar.length; i++) {

ar[i]=new Random().nextInt(10);

}//데이터 초기화

for (int i = 0; i < ar.length; i++) {

System.out.print(ar[i]+" ");

}//프리젠테이션 로직(출력을 보여주는것)

System.out.println();

int s= 0;

for (int i = 0; i < ar.length; i++) {

s=s+ar[i];

}//비지니스 로직

System.out.println(s);

}



함수 전부다



package pack2;

import java.util.Random;

import java.util.Scanner;

class Tiger{//함수 = 메소드,

int a,b,c;

Tiger(){

System.out.println("생성자콜");

}

void func01() {

System.out.println("함수1번이 콜되었습니다.");

}

void func02() {

for (int i = 0; i < 10; i++) {

System.out.println("5"+"*"+i+"="+(5*i));

}

}

void func03() {

int s=0;

for (int i = 0; i <= 10; i++) {

s += i;

}

System.out.println(s);

}

void func04() {

int a=35;

while(true) {

System.out.println(a);

if(a==1) {

System.out.println("우박수끝");

break;

}

a = (a%2==0)? a/2 : 3*a+1;

/*if(a%2==0) {//else if n개중 하나

a=a/2;

}else

a=3*a+1;*/

}

}

void func05() {


//int타입의 변수 7개를 배열로 선언하세요

//0~10까지의 숫자들을 7개의 배열에 채워넣으시오

//배열안의 모든 내용을 출력하세요

int ar[] = new int[7];

for (int i = 0; i < ar.length; i++) {

ar[i] = new Random().nextInt(10);

}

for (int i = 0; i < ar.length; i++) {

System.out.print(ar[i]+" ");

}

System.out.println();

int s=0;

for (int i = 0; i < ar.length; i++) {

s +=ar[i];

}

System.out.println(s);

}

void func06(int num) {//함수를 하나받도록 되어있어서 밑에서 호출할때 하나 넣어줘야된다.

System.out.println(num);

}

void func07(int num) {//num 중복되도 사용가능

for (int i = 0; i < 10; i++) {

System.out.println(num+"*"+i+"="+(num*i));

}

}

void func08(int num) {

int s=0;

for (int i = 0; i <= num; i++) {

s+=i;

}

System.out.println(s);

}

void func09(int a) {

while(true) {

System.out.println(a);

if(a==1) {

System.out.println("우박수끝");

break;

}

a = (a%2==0)? a/2 : 3*a+1;

/*if(a%2==0) {//else if n개중 하나

a=a/2;

}else

a=3*a+1;*/

}

}

void func10(int a, int b) {//int a,b하면안된다

System.out.println(a+" "+b);

}

void func11(char a,int b,float c,String d) {

System.out.println(a+" "+b+" "+c+" "+d);

}

void func12(int a,int b) {

int s= 1;

for (int i = 0; i < b; i++) {

s= s*a;

}

System.out.println(s);

}

void func13(int num,String name,String sound) {

System.out.print(name+"가");

for (int i = 0; i < num; i++) {

System.out.print(" "+sound);

}

System.out.println(" 납니다.");

}

int func14() {//함수가 int면 return이 있어야된다.

return 100;//return있을떄 받는방법 3개

}

void func15() {

//return없으면 받을수없다.

}

int func16(int a,int b) {

int c = a+b;

return c;

}

int func17(int a,int b) {

return a+b;

}

//16번과 17번은 같다.

int func18(int a,int b) {//if else가 나오면 삼항연산 생각해보기

if(a>b) {

return a;

}else

return b;

}

int func19(int a,int b) {


/*int t = a>b?a:2;

return t;*/

//a=(3>2)? 10:20;

// = eturn (a>b)?a:b;실전문법


}

int func20(int a,int b) {//if else가 나오면 삼항연산 생각해보기


if(a>b) {


return a;


}else


return b;//함수는 return키를 만나면 함수가 중단된다.함수가 끝난다.

//System.out.println("호랑이");//도달하지 못하는 코드

}

void func21() {//return값이 없으면 void

System.out.println("호랑이");

return;

//함수는 리턴값이 없어도 return키워드는 사용할수있다.

}

void func22(int num) {

if(num<0) {

System.out.println("이 함수는 음수 입력불가.");

return;//굳이 밑에까지 갈필요가없으니 끊어준다.

}

if(num%2==0) {

System.out.println("함수의 인수는 짝수입니다.");

}else

System.out.println("함수의 인수는 홀수입니다.");

}


}


public class asdf {

public static void main(String[] args) {

Tiger t1 = new Tiger();

/*System.out.println(t1.a);

for (int i = 0; i < 3; i++) {

t1.func01();//콜은 클래스 변수이름.함수이름 - 변.함

}

t1.func02();

t1.func03();

t1.func01();

t1.func04();

t1.func05();

t1.func06(166);//call 괄호안에 숫자를 넣으면 함수의 num에 들어감

t1.func07(99);

t1.func08(1000);

t1.func09(35);

t1.func10(10,20);

t1.func11('가',100,5.86f,"호랑이");

t1.func12(2,5);

t1.func13(5,"비둘기","훨");*/

int a = t1.func14();//리턴을 받는방법 변수로 받는방법

System.out.println(a);

t1.func14();//리턴을 했는데 안받으면 데이터가 사라진다.

System.out.println(t1.func14()); //바로출력

//int b = t1.func15();//리턴값이 없으면 콜을 할수없다.

//System.out.println(t1.func15());//리턴값이 없으면 콜을 할수없다.

t1.func15();

System.out.println(t1.func16(10,20));

int b= t1.func16(10,20);

System.out.println(b);

t1.func16(10,20);

System.out.println(t1.func17(10,20));

System.out.println(t1.func18(10, 20));

System.out.println(t1.func18(30, 20));

int n1 = 30,n2 = 15,n3 = 40,n4 = 13;

System.out.println(t1.func18(t1.func18(n1, n2),t1.func18(n3, n4)));

int n5 = t1.func18(n1,n2 );

int n6 = t1.func18(n3,n4);

int n7 = t1.func18(n5, n6);

System.out.println(n7);

//인수를 전달한다, 리턴값이 있다.

//4가지 방식 함수의 가장기본적인 방식 4가지


}

}

728x90

'비트 장기 > JAVA' 카테고리의 다른 글

7/17 배움(class, 생성자)  (0) 2018.07.17
7/16 복습  (0) 2018.07.17
7/15까지 문제 한번 풀어보기  (0) 2018.07.16
7/13 복습  (0) 2018.07.15
7/13 배움(클래스 복습떄 용어정리하기)  (0) 2018.07.13

댓글