나이를 입력받아 술을 마실 수 있는지(18세 이상) 여부를 리턴
- boolean 타입을 리턴
function drink(age) {
if (age >= 18){
return true; }
else {
return false; }
}
console.log(drink(17));
온도를 입력받아 해당 온도가 30이 넘는지 확인 후 알맞은 값을 리턴
function hot(temp){
if ( temp < 30 ) {
return '여름이 매우 덥네요';}
else if ( temp >= 30) {
return '에어켠을 켜야겠다!';}
}
console.log(hot(30));
수를 입력받아 10과 같은지 여부를 리턴
- boolean 타입을 리턴
function number(aaa) {
if (aaa === 10){
return true;}
else {
return false;}
}
console.log(number(10));
두 개의 수를 입력받아 두번째 수가 첫번째 수보다 큰지 여부를 리턴
- boolean 타입을 리턴
function number(a, b){
if ( b > a ){
return true;}
else {
return false;}
}
console.log(number(2, 5));
수를 입력받아 짝수인지 여부를 리턴
- boolean 타입을 리턴
function isEven(num1){
if (num1 % 2 === 0){
return true;}
else {
return false;}
}
console.log(isEven(2));
수를 입력받아 입력된 수가 10보다 크고 짝수인지 여부를 리턴
- boolean 타입을 리턴
function isEvenAndGreaterThanTen(num) {
if (num === 10){
return false;
}
else if (num >= 10 && num % 2 == 0){
return true;
}
else {
return false;
}
}
console.log(isEvenAndGreaterThanTen(12));
수를 입력받아 3 그리고 5로 각각 나눈 뒤 나머지 값에 따라 알맞은 메시지를 리턴
function fizzBuzz(num) {
if (num % 3 === 0 && num % 5 === 0 ){
return 'FizzBuzz';
}
else if (num % 3 === 0){
return 'Fizz';
}
else if (num % 5 === 0){
return 'Buzz';
}
else {
return 'No FizzBuzz';
}
}
console.log(fizzBuzz(5));
두 개의 수와 기호를 입력받아 알맞게 계산한 값을 리턴
function miniCalculator(num1, num2, operator) {
if ( operator === '+' ){
return num1 + num2;
}
else if ( operator === '-' ){
return num1 - num2;
}
else if ( operator === '*' ){
return num1 * num2;
}
else if ( operator === '/' ){
return num1 / num2;
}
}
console.log(miniCalculator(3, 4, '+'));
특정 달(month)을 입력받아 각 달에 몇 일이 있는지 리턴
function daysInMonth(month) {
if (month === 1 || month === 3 || month === 5 || month === 7 ||
month === 8 || month === 10 || month === 12){
return 31;
}
else if ( month === 4 || month === 6 || month === 9 || month === 11){
return 30;
}
else if (month === 2)
return 28;
}
daysInMonth(1)
followingDay
요일을 입력받아 해당 요일의 다음 요일을 리턴
function followingDay(day) {
if (day === '월요일'){
return '화요일';
}
else if (day === '화요일'){
return '수요일';
}
else if (day === '수요일'){
return '목요일';
}
else if (day === '목요일'){
return '금요일';
}
else if (day === '금요일'){
return '토요일';
}
else if (day === '토요일'){
return '일요일';
}
else if (day === '일요일'){
return '월요일';
}
else {
return '올바른 요일이 아닙니다';
}
}
followingDay('토요일')
두 개 수를 입력받아 아래의 2가지 조건을 모두 만족하는지 검사
- 적어도 하나의 수는 짝수
- 두 수 모두 9보다 작음
- boolean 타입을 리턴
function isEitherEvenAndLessThan9(num1, num2) {
if ( (num1 % 2 === 0 || num2 % 2 === 0) && (num1 < 9 && num2 < 9)){
return true;
}
else{
return false;
}
}
isEitherEvenAndLessThan9(2, 4);
점수를 입력받아 점수에 해당하는 등급을 리턴
function convertScoreToGrade(score) {
if (score <= 100 && score >= 90){
return 'A';
}
else if(score <= 89 && score >= 80){
return 'B';
}
else if(score <= 79 && score >= 70){
return 'C';
}
else if(score <= 69 && score >= 60){
return 'D';
}
else if(score <= 59 && score >= 0){
return 'F';
}
else{
return 'INVALID SCORE';
}
}
convertScoreToGrade(50)
점수를 입력받아 점수에 해당하는 등급
- 100을 초과하거나 0 미만인 경우, 문자열 'INVALID SCORE'를 리턴
- 각 등급의 최고 점수보다 7점 이하인 경우, 등급과 함께 '-'를 리턴
- 각 등급의 최저 점수보다 8점 이상인 경우, 등급과 함께 '+'를 리턴
- F+ 와 F- 는 존재X
function aaa(bscore) {
if ( bscore <= 2 ){
return '-';
}
else if ( bscore >= 8 ){
return '+';
}
else {
return '';
}
}
function convertScoreToGradeWithPlusAndMinus(score) {
grade = score / 10;
bscore = score % 10 ;
if ( score > 100 || score < 0){
return 'INVALID SCORE';
}
else if ( score === 100){
return 'A+';
}
else if ( score >= 90){
return grade = 'A' + aaa(bscore);
}
else if ( score >= 80){
return grade = 'B' + aaa(bscore);
}
else if ( score >= 70){
return grade = 'C' + aaa(bscore);
}
else if ( score >= 60){
return grade = 'D' + aaa(bscore);
}
else if ( score < 60){
return grade = 'F';
}
}
convertScoreToGradeWithPlusAndMinus(20)
삼각형의 세 변을 입력받아 직각삼각형(pythagorean)인지 여부를 리턴
- boolean 타입을 리턴
function isPythagorean(side1, side2, side3) {
q1 = side1 * side1;
a1 = side2 ** 2;
z1 = Math.pow(side3,2);
if (q1 === a1 + z1 || a1 === q1 + z1 || z1 === q1 + a1){
return true;
}
else{
return false;
}
}
isPythagorean(3,4,5)
두 개의 boolean 값을 입력받아 or 연산을 적용한 것과 같은 결과를 리턴
function or(expression1, expression2) {
if ( expression1 === true && expression2 !== true){
return true;
}
else if ( expression1 !== true && expression2 === true){
return true;
}
else if ( expression1 === true && expression2 === true){
return true;
}
else {
return false;
}
}
or(true, false)
시, 분, 초를 입력받아 1초를 더한 결과값을 특정 형태의 메시지로 리턴
- string 타입을 리턴
function addOneSecond(hour, minute, second) {
if ( hour === 23 && minute === 59 && second === 59){
return '1초 뒤에 0시 0분 0초 입니다';
}
else if (minute === 59 && second === 59 ){
return '1초 뒤에 ' + (hour+1) + '시 0분 0초 입니다';
}
else if (minute === 59){
return '1초 뒤에 ' + (hour+1) + '시 0분' + second + '초 입니다';
}
else if (second === 59){
return '1초 뒤에 ' + hour + '시 ' + (minute+1) + '분 0초 입니다';
}
else{
return '1초 뒤에 ' + hour + '시 ' + minute + '분 ' + (second+1) + '초 입니다';
}
}
addOneSecond(14, 17, 59);
임의의 값을 입력받아 falsy 값인지 여부를 리턴
- boolean 타입을 리턴
function isFalsy(anything) {
if ( anything === 0 || anything === -0 || anything === '' ||
anything === null || anything === undefined ){
return true;
}
else if ( Number.isNaN(anything) === true){
//else if ( anything === NaN )로 실행할 경우 false 값으로 나옴.
return true;
}
else{
return false;
}
}
isFalsy(NaN);