앞에서 살펴본 1에서 정해진 수까지 더하는 프로그램은 정해진 수가 커지는 경우 결과가 느려지는 문제가 있었습니다.


1에서 정해진 수까지 핸드폰이 계산을 했지만 1에서 정해진 수까지 돌면서 계산하는 거라 수가 커지면 느려졌습니다. 


가우스는 1에서 100까지를 쓴것 밑에 100에서 1을 거꾸로 써서 위아래의 수를 모두 더하면 101이 100번 나오므로 모두 더한 후 에 2로 나눠서 구한 방법을 이용해서 어린 나이에 계산을 했다 한다


일반적으로 1에서 100까지 구하는 문제를 푸는 방법은 


1      2     3      4     ..... 50

100    99   98    97    ....   51   


이런식으로 구성해서 계산을 하게 됩니다 


이런식으로 더하는 식을 구성하면 


 정해진 수 * ( 정해진 수 +1 )  / 2  = 값이 됩니다. 


이식을 프로그램해 보도록 하겠습니다. 





1에서 정해진 수까지 더하기 1에서는 30,000까지 더하는 경우도 많이 느려졌습니다. 그런데 이젠 300,000,000 까지 더하더라도 느려지지 않습니다. 


이러한 논리를 배우는 것이 프로그램이라고 할 수 있습니다. 


첨부 파일을 이용해서 테스트 해 볼 수 있습니다.


add_accu_2.aia


add_accu_2.apk


1에서 정해진 수까지 더하기 1


1 + 2 +3  + 4 +  ~~~ 으로 더한 값을 구하는 방법을 알아 보고자 한다. 


가장 간단한 방법은 사람이 더하듯이 핸드폰도 더하는 방식을 이용하면 된다.









치명적인 단점이 있다. 더하는 값이 많아 지는 경우 너무 오래 걸린다. 새로운 논리가 필요하다. 


첨부파일을 이용해서 테스트 해 보자.


add_accu.aia


add_accu.apk





첫번째 강의에서 입력창에 아무런 값을 넣지 않고 약수구하기 버튼을 누르면 에러가 났다.

 


이 문제를 개선해 보도록 하겠습니다.

 

 

 

 

1. 입력창에 숫자가 아닌 문자이거나 입력값이 없으면 메세지 보여주기

 

 is number 와 length 를 이용해서 숫자인지 문자가 입력되었는지 확인 한다.

 

 Notifier를 이용해서 화면에 메세지를 보여준다.

 

 

2. 결과

 

입력창에 입력 하지 않고 약수구하기 버튼을 누르면 숫자를 넣어주세요란 메세지를 보여준다.

 

 

 

3. 첨부 파일 


divisor_2.aia


divisor_2.apk


 

- aia 확장자 파일를 앱인벤터로 import 시켜서 소스 형태로 활용 할 수 있습니다.

 

- apk 확장자 파일은 안드로이디로 다운로드 받아 설치해서 앱을 실행시켜 볼 수 있습니다.

안드로이드에 약수를 구하는 프로그램을 만들어 보자.

 

 

1. 앱인벤터를 이용한 약수 구하기

 

약수란 : 어떤 수를 나누어 떨어지게 하는 수

 

가장 기초적인 약수구하는 방법은 1에서 주어지 수 까지 나눠서 나머지가 나오니 않는 수를 찾는 겁니다.

물론 숫자가 커지면 핸드폰도 계산이 느려집니다. 다음 강좌에서 더 효율적인 방법을 알아보도록 할 예정입니다.

 

30이라는 숫자를 입력 받으면 1부터 30까지 차례로 나눠서 나머지가 있는지 보고 나머지가 없는 숫자를 핸드폰 화면에 나타냅니다.

 

 

 

2. 결과 화면

 

 

3. 첨부 파일 import


divisor_1.aia


divisor_1.apk


- 첨부 파일을 다운 받아 import를 이용하여 소스를 내 프로젝트로 가져와 실행 해 볼 수 있습니다. 




+ Recent posts