JAVA1

나의 앱 만들기 1

강의소개

배웠으면 사용해야 합니다. 배우기만하고 사용하지 않으면 우리의 뇌는 억울해합니다. 서둘러서 배운 것을 활용해 나의 문제를 해결해봅시다. 

 

 

 

강의1

 

 

 

강의2

소스코드

변경사항

public class AccountingApp {

    public static void main(String[] args) {

		double valueOfSupply = 10000.0;
		double vatRate = 0.1;
		double expenseRate = 0.3;
		double vat = valueOfSupply * vatRate;
		double total = valueOfSupply + vat;
		double expense = valueOfSupply * expenseRate;
		double income = valueOfSupply - expense;
		double dividend1 = income * 0.5;
		double dividend2 = income * 0.3;
		double dividend3 = income * 0.2;

		System.out.println("Value of supply : " + valueOfSupply);
		System.out.println("VAT : " + vat);
		System.out.println("Total : " + total);
		System.out.println("Expense : " + expense);
		System.out.println("Income : " + income);
		System.out.println("Dividend 1 : " + dividend1);
		System.out.println("Dividend 2 : " + dividend2);
		System.out.println("Dividend 3 : " + dividend3);

	}

}

 

 

 

강의3

 

 

 

강의4

소스코드

변경사항

public class AccountingApp {

    public static void main(String[] args) {

		double valueOfSupply = Double.parseDouble(args[0]);
		double vatRate = 0.1;
		double expenseRate = 0.3;
		double vat = valueOfSupply * vatRate;
		double total = valueOfSupply + vat;
		double expense = valueOfSupply * expenseRate;
		double income = valueOfSupply - expense;
		double dividend1 = income * 0.5;
		double dividend2 = income * 0.3;
		double dividend3 = income * 0.2;

		System.out.println("Value of supply : " + valueOfSupply);
		System.out.println("VAT : " + vat);
		System.out.println("Total : " + total);
		System.out.println("Expense : " + expense);
		System.out.println("Income : " + income);
		System.out.println("Dividend 1 : " + dividend1);
		System.out.println("Dividend 2 : " + dividend2);
		System.out.println("Dividend 3 : " + dividend3);

	}

}

 

댓글

댓글 본문
  1. 1000210002
    2021/01/13
  2. 1000210002
    꿀팁 감사합니다
    대화보기
    • 1000210002
      2021/01/13
    • Lithium3
      왜 rm 저부분에서 계속 막히는걸까 화나네
    • 꾸르를꾸
      강의2(불평하라) : 변수를 지정해서 계산식을 좀더 짧게 만드는 것이 좀 더 단순하고 다른사람과 공유도 쉬울 듯 싶다
      강의3(불평하라) : 변수지정과정이 생각보다 복잡하다, 좀더 사용자친화적으로 만들고 싶다.
      강의3(불평하라) : 좀더 사용자친화적으로 만들고 싶다.
    • artmaker
      - 항상 배운것에서 최선을 만들려고 해봐야한다. 공부를 잘하는 것보단 일을 잘하는 사람이 더 많은 선택을 받는다고 생각한다고 하셨다. 그래서 일을 잘하려면 어떻게해야할까 생각해본적이있다고 하셨다. 배움없이도, 배움이 얼마 되지않더라도 문제를 해결하고 무언갈 만들어내는사람이 일을 잘하는것이라고 생각했다고 하셨다. 그리고 이렇게 배운지식범위에서 계속 최선의 무언가를 만들어내는 행위는 새로운 지식을 필요하게만들었고 이것이 공부의 원동력이 된다고하셨다.

      - 개발자가 만든 프로그램은 입력값을 고칠때 코드를 들어가서 고치는 일은 없어야 한다.
    • J.stan
      20201223 Finished
    • 20201211
    • 20201210
    • ph1216
      미리 만들어봤습니다. 더 줄일수 있을것같지만 잘 모르겠네요 ㅎ
      import javax.swing.JOptionPane;

      public class MyApp {

      public static void main(String[] args) {

      var Vat= 0.1;
      String total =JOptionPane.showInputDialog("Total income");
      System.out.println("vat : "+Double.parseDouble(total)*Vat);

      var Expense=0.3;
      System.out.println("expense : "+Double.parseDouble(total)*Expense);
      var profit =Double.parseDouble(total)-((Double.parseDouble(total)*Vat)+(Double.parseDouble(total)*Expense)) ;

      var income=Double.parseDouble(total);
      System.out.println("income : "+profit);

      var dividend = profit/10 ;

      String divide1 =JOptionPane.showInputDialog("Dividend for A");
      String divide2 =JOptionPane.showInputDialog("Dividend for B");
      String divide3 =JOptionPane.showInputDialog("Dividend for C");

      System.out.println("changhae : "+dividend*Double.parseDouble(divide1));
      System.out.println("minsu : "+dividend*Double.parseDouble(divide2));
      System.out.println("egoing : "+dividend*Double.parseDouble(divide3));



      }

      }
    • 최사각
      201122
    • 안광민
      public class AccountingApp {

      public static void main(String[] args) {
      double p1 = Double.parseDouble(args[0]); // Value of Supply
      double p2 = p1*0.1; // VAT
      double p3 = (p1-p1*0.3); // Income

      System.out.println("Value of supply = " +p1);
      System.out.println("VAT = " + p2);
      System.out.println("Consumer Price = " + (p1+p2));
      System.out.println("Expense = "+ p1*0.3);
      System.out.println("Income = " + (p1-p1*0.3));
      System.out.println("Dividend for A = " + p3*0.5);
      System.out.println("Dividend for B = " + p3*0.3);
      System.out.println("Dividend for C = " + p3*0.2);
      }

      }

      난 이렇게 함

      완료
    • 싱와
      불평하기 1

      여기서는 특정 데이터의 값만 넣어줄 수있다.
      그때그때 내가 원하는 값을 쓰지는 못함..
    • 2020.10.16 완료!
    • 임찬우
      수업 듣기전에 미리 만들어보고 수업들었는데 저는 이런식으로 해봤습니다!
      나중에 범위 설정하는것도 찾아보고 배분율에 1~100으로 설정할 수 있게 하는 방법도 적용시켜봐야겠네요 ㅎㅎ

      import javax.swing.JOptionPane;

      public class CALC {

      public static void main(String[] args) {
      String item_money = JOptionPane.showInputDialog("물건값을 입력해주세요 (숫자만 가능)");
      String x = JOptionPane.showInputDialog("a의 수익분배율(%)을 입력해주세요 (숫자만 가능)");
      String y = JOptionPane.showInputDialog("b의 수익분배율(%)을 입력해주세요 (숫자만 가능)");
      String z = JOptionPane.showInputDialog("c의 수익분배율(%)을 입력해주세요 (숫자만 가능)");

      double item_value = Double.parseDouble(item_money);
      double tax = Math.floor(item_value/11);
      double cost_price = Math.ceil(item_value/11*10);
      double origin_price = cost_price*0.3;
      double income = cost_price-origin_price;
      double a= income*Double.parseDouble(x)/100;
      double b=income*Double.parseDouble(y)/100;
      double c=income*Double.parseDouble(z)/100;

      System.out.println("물건 값: "+ item_money);
      System.out.println("세금 10%: " +tax);
      System.out.println("물건 공급가 :" +cost_price);
      System.out.println("원가 : "+ origin_price);
      System.out.println("이익 : " + income);
      System.out.println("A의 수익: "+a);
      System.out.println("B의 수익: "+b);
      System.out.println("C의 수익: "+c);

      }

      }
    • Gyeong Min Lee
      ㅇㄹ
    • 치디우기
      20200826 수강~
    • 으헝
      마지막에 컴파일 해서 class파일 생성되는 거 확인하고 java accountingweb해도 값이 안나오시는 분 뒤에 .java 확장자 붙여 보세요 나오네요. java accountingweb.java 30000 이러니 나오네요 ㅠㅠ
    • 요리하는공학도
      강의 마지막 부분 dos 창에서 10000.0 을 입력했을때
      이게 어떤것 때문에 인식이 되서 계산되는지가 궁금하네영 ㅜㅜ
      .자바 후에 뛰어쓰기 한 곳이 args[0] 값으로 입력되는건가여 ?
    • 열도에팔려버린개발자
      이 프로그램에 우리가 일반적으로 보는 어플리케이션처럼 디자인?을 덫붙이려면 필요한 것이 뭐죠?
    • 변수 없이도 기본기능을 구현할 수 있다니.......... ㅠㅠ
      저도 뭔가 할 수 있는 느낌이예요..!!

      동기부여가 많이 되었어요
      감사합니다 선생님
    • 영철이
      src 폴더 안에 myApp 패키지 안에 들어있는 AccountingApp.class를 실행시키는 방법은 어떻게 되나요?? ㅜㅜ java myApp.AccountingApp 라고 해도 안되네요 ㅜ
    • cmd 창을 이용해서 제가 저장한 곳으로 가서 dir을 쳤는데 해당 파일이 없어서 찾아보니
      src폴더에 저장되어있었습니다.
      그래서 cd src 를 친 다음 javac AccountingApp.java 를 치고 나서 java AccountingApp 를 하니 정상 작동되었습니다.
    • Dayoung
      완료! 감사합니다.
    • 해냈어여!!
      제가 뭔가 해냈다고 자랑스럽게 느껴지는 강의네요 항상 좋은 강의 감사합니다.
    • 해냈어여!!
      제가 뭔가 해냈다고 자랑스럽게 느껴지는 강의네요 항상 좋은 강의 감사합니다.
    • 완료
    • 뉸찡
      2020.3.4 완료! 감사합니다!
    • 수영
      20200228
      마지막 cmd에서 에러나서 그냥 관전모드 하고 싶었는데 코린이님 댓글 덕에 완수했습니다
      감사합니다!
    • 점점 어려운데 점점 더 재밋네요..
    • 감사합니다...
    • 완료! 감사합니다 ㅎㅎ
    • 취생아
      완료 2020/01/29
    • 소금설탕
      완료. 고맙습니다.
    • 라또마니
      완료. 자바 시즌1 보다 확실히 더 업그레이드 된 느낌입니다.
    • 정훈
      저는 아래의 에러가 발생해서 좀 해맸네요.. eclipse하고 설치된 자바머신하고 버젼이 달라 발생한 것으로 판단됩니다.
      class화일을 삭제하고 새로 javac로 컴파일해서 재 구동하니 동작 되었네요.

      java AccountingApp 3333.0
      Error: A JNI error has occurred, please check your installation and try again
      Exception in thread "main" java.lang.UnsupportedClassVersionError: AccountingApp has been compiled by a more recent version of the Java Runtime (class file version 56.0), this version of the Java Runtime only recognizes class file versions up to 52.0
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
      at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    • 코린이
      before

      double valueOfSupply = Double.parseDouble(args[0]);
      ----------------------------------------------------------------------
      after

      String 상품가격 = JOptionPane.showInputDialog("상품가격");
      double valueOfSupply = Double.parseDouble(상품가격);
      ----------------------------------------------------------------------

      이런 식으로 ValueOfSupply에 입력하게 될 필드값에 arg[0]을 사용하는 대신 입력과 출력에서 배웠던 것 처럼
      import javax.swing.JOptionPane; 얘를 임포트 해주고

      String id = JOptionPane.showInputDialog("상품가격");
      얘를 적용하면 좀더 직관적으로 실행할 수 있게 되는거 같아요-!
    • 코린이
      윈도우에서 만약 경로가 C:\Users\ABCDE\Desktop\Java연습\MyApp 여기라면
      cmd창에 C:\Users\ABCDE\Desktop\Java연습\MyApp 입력 후 엔터를 치면 최종 목적지인 MyApp을 폴더가 아니라 프로그램으로 인식하고 실행할 수 없다고 나올거에요.

      우선 cmd에서 해당 디렉토리로 이동하기 위해서
      cd C:\Users\ABCDE\Desktop\Java연습\MyApp 라고 입력 후 엔터를 치면 디렉토리가 이동된 걸 확인할 수 있을 거에요.

      이후 dir을 입력해서 해당 디렉토리내에 어떤 파일들이 있는지 확인하고 AccountingApp.class 파일이 없으면
      javac AccountingApp.java
      커맨드로 컴파일을 해서 AccountingApp.class파일을 생성해주시고 파일이 있으면
      java AccountingApp
      커맨드를 통해 프로그램을 실행시킬 수 있어요

      이과정에서 6번째 줄에 문제가 있다고 에러가 뜨고 프로그램이 정상적으로 구동되지 않는걸 확인할 수 있는데 이는 변수로 입력돼야하는 물건값이 설정되지 않아서 그래요

      그럴 땐
      java AccountingApp 물건가
      ex) java AccountingApp 32000
      이런식으로 커맨드를 입력하시면 가격변수까지 입력되어서 정상적으로 프로그램이 구동되는걸 확인하실 수 있을거에용
      대화보기
      • 자바
        cd가 안되는데 어떻게하죠ㅜㅜㅜ
      • James
        와.. 진짜 신기하고 재밌네요ㅎㅎ 늘 생각하지만 설명이 정말 한폭의 예술의 같네요.
      • 쑤우
        수강완료. 감사합니다~
      • onebellfortune@gmail.com
        자바 안깔려있으면 언제 다시 깔아서 환경변수 설정하고 실행하고 있습니까!
        사용자 입장에서는 USB 딱 꽂고 실행 버튼 누르면 바로 입력값 창 뜨고 엔터 치면 계산 결과 다 나오게 만들어야죠
      • 햄쮸맨
        저는 왜 항상 Java -cp "." AccountingApp.java 30000 처럼 -cp "." 를 꼭 넣어야 할까요..? 이거 좀 거슬리네용.
      • 레피두스
        dir 명령어 입력해서 현재 디렉터리에 있는 파일들을 확인해보시고, AccountingApp.class 파일을 찾아보세요.
        대화보기
        • torryjini@naver.com
          윈도우에서 cmd 켜고 경로 붙여넣었는데 그 이후부터 막히네요
        • juunpapa
          미세한 팁이 아니라 엄청난 팁인데요!
          고맙습니다 ^^
          대화보기
          • jiahnkimm@gmail.com
            저.. 그런데 ... 다른사람 컴퓨터에서 실행해보려고 드롭박스에 넣어서 공유해서 사용을 해보니 실행이 안되네요 ㅠㅠ..!!! 로드할 수 없다고 에러메세지가 나오는데.. 어떻게 해야 다른 컴퓨터에서도 문제없이 사용해볼 수 있을까요 ....!!!!!!!!!!!!!!!!!!!! 자바, 이클립스 깔려있습니다. 혹시 아시는분 계신가요 ~?!
          • jiahnkimm@gmail.com
            사진첨부가 된다면 좋을텐데ㅡㅎㅎㅎㅎ 약간 오류가 잇어서 헤매었는데 그나마 잘 해결하여서 성공 했습니다 !ㅎ ㅎㅎ
          • 기봉기봉
            아 Add folder를 안해서 생긴문제였네요. 해결했습니다 !
          • 기봉기봉
            강의3에서 한번에 변수를 변경하기 위해 Refactor 메뉴에서 Extract local value에 클릭하니 The resource is not on the build path of Java project라고 나옵니다.
            환경변수 설정이 되지않아서 발생하는 문제인가요??
          버전 관리
          egoing
          현재 버전
          선택 버전
          graphittie 자세히 보기