A씨는 게시판 프로그램을 작성하고 있다.
A씨는 게시물의 총 건수와 한 페이지에 보여줄 게시물수를 입력으로 주었을 때 총 페이지수를 리턴하는 프로그램이 필요하다고 한다.
입력 : 총건수(m), 한페이지에 보여줄 게시물수(n) (단 n은 1보다 크거나 같다. n >= 1)
출력 : 총페이지수
A씨가 필요한 프로그램을 작성하시오.
예) 프로그램 수행 시 다음과 같은 결과값이 나와야 함.
| m | n | 출력 |
|---|---|---|
| 0 | 1 | 0 |
| 1 | 1 | 1 |
| 2 | 1 | 2 |
| 1 | 10 | 1 |
| 10 | 10 | 1 |
| 11 | 10 | 2 |
Javascript 입니다.
function page (m,n) {return Math.ceil(m / n); }
2014年04月29日 20:29
// Math 함수를 이용한 경우
function getTotalPage1(m,n){
var total_page = 0;
total_page = Math.ceil(m / n);
return total_page;
}
// Math 함수를 이용하지 않는 경우
function getTotalPage2(m,n){
var total_page = 0;
total_page = parseInt(m / n);
if(total_page > 0) total_page += 1;
return total_page;
}
2016年08月08日 11:00
var m = prompt("총 건수는?");
do{
var n = prompt("한 페이지 보여줄 게시물 수는?");
}while(n <= 0);
if(m==0){
page = 0;
console.log(page);
}else if(m%n!=0 && m/n==0){
page = m/n;
console.log(page);
}else if(m%n!=0 && m/n!=0){
page = parseInt(m/n)+1;
console.log(page);
}else if(m%n==0){
page = m/n;
console.log(page);
}
ceil 을 몰라서 /, % 를 열심히 써서 계산했던 옛 기억이 떠오르네요.
Java 에서는 int / int 가 int 여서 ceil 대신 mod 로 했던 것 같아요.
javascript 는 자동 float 변환을 해주니까 ceil 이 편합니다.
javascript로 ceil 과 mod 둘다 해봤습니다.
var totalpage = function(m, n) {
return Math.ceil(m / n);
}
var totalpage = function(m, n) {
return parseInt(m / n) + ~~(m % n);
}
console.log(totalpage(0, 1));
console.log(totalpage(1, 1));
console.log(totalpage(2, 1));
console.log(totalpage(1, 10));
console.log(totalpage(10, 10));
console.log(totalpage(11, 10));
2017年06月16日 15:39
var m = 0;
var n = 0;
var pages = 0;
if(m == 0 || n == 0){
pages = 0;
} else if(m > n){
pages = Math.ceil(m/n);
} else if(m == n || m < n){
pages = 1;
} else {
console.log("logic error");
}
console.log("결과 : " + pages);
2018年03月14日 22:16
const getPageNum = (total, n) => {
if (n < 0) n = 1;
return Math.floor(total / n)
}
console.log(getPageNum(1, 1));
2018年03月20日 11:55
function cal(m, n) {
return Math.ceil(m / n);
}
2021年11月10日 16:13
풀이 작성