Exercise-01 Max Of Two Numbers

Write a function that takes two numbers and returns the maximum of the two

let number = max(2, 10);

console.log(number);

function max(number1, number2) {
/*if (number1 > number2)
return number1;
else
return number2;
*/
return (number1 > number2) ? number1 : number2;
}

Exercise-02 Landscape or Portrait

console.log(isLandscape(800, 600));

function isLandscape(width, height){
return (width > height);
}

Exercise-03 FizzBuzz

Divisible by 3 Fizz

Divisible by 5 Buzz

Divisible by both 3 and 5 FizzBuzz

Not Divisible 3 or 5 input

typeof NaN

Output "number"

const output = fizzBuzz(7);

console.log(output);

function fizzBuzz(input) {
if (typeof input !== 'number')
return NaN;
if ((input % 3 === 0) && (input % 5 === 0))
return 'FizzBuzz';
if (input % 3 === 0)
return 'Fizz';
if (input % 5 === 0)
return 'Buzz';
return input;
}

Exercise-04 Demerit Points

Speed Limit = 70

checkSpeed(50);

function checkSpeed(speed) {
const speedLimit = 70;
const kmPerPoint = 5; if (speed < speedLimit + kmPerPoint) {
console.log('OK');
return ;
} const points = Math.floor((speed - speedLimit) / kmPerPoint); if (points >= 12)
console.log('License suspended');
else
console.log('Points ', points);
}

Exercise-05 Even and Odd numbers

showNumbers(10);

function showNumbers(limit) {
for (let i = 0; i <= limit; i++) {
/*if (i % 2 === 0)
console.log(i, 'EVEN');
else
console.log(i, 'ODD');*/ const message = (i % 2 === 0) ? 'EVEN' : 'ODD'; console.log(message);
}
}

Exercise-06 Count Truthy

const array = [0, null, undefined, '', Nan, false, 2, 9];

console.log(countTruth(array));

function countTruthy(array) {
let count = 0; for (let value of array) {
if (value)
count++;
}
return count;
}

Exercise-07 String Properties

const movie = {
title: 'Mustang',
releaseYear: 2020,
rating: 4.5,
director: 'Unity'
}; showProperties(movie); function showProperties(obj) {
/*for (let key in obj)
console.log(key);*/ for (let key in obj) {
if (typeof obj[key] === 'string')
console.log(key, obj[key]);
}
}

Exercise-08 Sum of Multiples of 3 and 5

Multiples of 3: 3, 6, 9

Multiples of 5: 5, 10

sum = 3+6+9+5+10 = 33

console.log(sum(10));

function sum(limit) {
let sum = 0; for (let i = 0; i <= limit; i++) {
if (i % 3 === 0 || i % 5 === 0)
sum += i;
}
return sum;
}

Exercise-09 Grade

const marks = [80, 86, 99];

console.log(calculateGrade(marks));

function calculateGrade(marks) {
const average = calculateAverage(marks); if (average < 60)
return 'F';
else if (average < 70)
return 'D';
else if (average < 80)
return 'C';
else if (average < 90)
return 'B';
return 'A';
} function calculateAverage(array) {
let sum = 0;
for (let value of array) {
sum += value;
} return sum / array.length;
}

Exercise-10 Stars

ShowStars(6);

function showStars(rows) {
for (let row = 1; row <= rows; row++) {
let pattern = '';
for (let i = 0; i < row; i++) {
pattern += '*';
}
console.log(pattern);
}
}

Exercise-11 Prime Numbers

Prime (whose factors are only 1 and itself)

Composite

/*
showPrimes(20); function showPrimes(limit) {
for (let number = 2; number <= limit; number++) {
let isPrime = true;
for (let factor = 2; factor < number; factor++) {
if (number % factor === 0) {
isPrime = false;
break;
}
}
if (isPrime)
console.log(number);
}
}
*/ showPrimes(20); function showPrimes(limit) {
for (let number = 2; number <= limit; number++) {
if (isPrime(number))
console.log(number);
}
} function isPrime(number) {
for (let factor = 2; factor < number; factor++) {
if (number % factor === 0)
return false;
}
return true;
}

Flow Control的更多相关文章

  1. Node.js学习笔记 02 Implementing flow control

    What is flow control? 和其它语言一样,Node.js 在代码编写时,如何组织代码,如何写出clean code都是不可避免的难点. 同时,由于Node.js的天然特性(异步,事件 ...

  2. RocketMq发送消息出现com.alibaba.rocketmq.client.exception.MQBrokerException: CODE: 2 DESC: [TIMEOUT_CLEAN_QUEUE]broker busy, start flow control for a while, period in queue: 201ms, size of queue: 1

    最近对系统进行压测,发现发送消息到消息队列的时候出现如下错误: com.alibaba.rocketmq.client.exception.MQBrokerException: CODE: 2  DE ...

  3. Go Flow Control

    [Go Flow Control] 1.for没有(),必须有{}. 2.for的前后表达式可以为空. 3.没有while,for即是while. 4.无穷循环. 5.if没有(),必须有{}. 6. ...

  4. Producer Flow Control 和 vmQueueCursor

    ActiveMQ可以开启或关闭生产者流量控制Producer Flow Control ,基本原理是producer 发送一条消息会收到broker返回的ack响应,当磁盘或内存快满的时候broker ...

  5. Educational Codeforces Round 45 (Rated for Div. 2) F - Flow Control

    F - Flow Control 给你一个有向图,要求你给每条边设置流量,使得所有点的流量符合题目给出的要求. 思路:只有在所有点的流量和为0时有解,因为增加一条边的值不会改变所有点的总流量和, 所以 ...

  6. TCP Flow Control and Data Transfer

    TCP Flow Control TCP Data Transfer Selective Repeat ARQ with Positive ACK Window slides a byte basis ...

  7. 第三章: Expressions and Flow Control

    第三章: Expressions and Flow Control一:局部变量和实例变量定义变量是指设定变量的数据类型和变量的名字,Java语言要求变量遵循先定义,再初始化,然后使用的规则.作用域:指 ...

  8. Backup: Flow Control in Perl6

    Control Flow 注意空格,注意空格,注意空格 和 Perl5不同的是,这些结构都可以返回值,而且即使倒置结构也可以用 block 了 block 可以有逗号 with without orw ...

  9. RabbitMQ学习之Flow Control

    当RabbitMQ发布消息速度快于消费速度或者系统资源不足时,RabbitMQ将降低或阻断发布消息速度,以免服务器资源饱满而宕机,可以通过rabbitmqctl和web管理页面查看连接的状态为flow ...

  10. SecureCRT VBscript关闭Flow Control CTS

    crt.Session.Connect "/Serial COM2 /BAUD 38400 /NOCTS" 更多命令行参数可查看SecureCRT-Help-Help Topics ...

随机推荐

  1. 20060518: Alert!

    Alert Received, Shrink My Blog! 转载于:https://www.cnblogs.com/yidinghe/archive/2006/05/18/403089.html

  2. Linux下必知必会文件和目录

    转载于:https://blog.51cto.com/xiyuxingxia/2372712

  3. ElementUI表单验证攻略:解决表单项启用和禁用验证的切换,以及动态表单验证的综合性问题

    试想一种比较复杂的业务场景: 表格(el-table)的每一行数据的第一列是勾选框,最后一列是输入框.当某一行的勾选框勾上时,启用该行的输入框,并开启该行输入框的表单验证:取消该行的勾选框,则禁用该行 ...

  4. Ngxin 开启CDN 日志获取不了真实IP的解决办法。

    nginx配置里面在http{ 后加入如下两行代码即可: set_real_ip_from 0.0.0.0/0;real_ip_header X-Forwarded-For; 重启nginx生效. 注 ...

  5. flask完成前后端分离实例

    需求:通过页面点击完成简单的投票系统功能. 相关文件: 设计思路: 1.前端:提供可以投票的入口.查询的入口.(前端不做数据处理,只做展示) 使用<a>  </a> 完成超链接 ...

  6. 经典卷积神经网络算法(1):LeNet-5

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  7. Linux权限管理、系统进程管理

    权限管理 linux系统中分为四种角色 u=user 当前用户   g=group 同组用户   o=other 其他用户   a=all 代表所有用户 三种权限 r=read 可读 w=write ...

  8. CC2530通用IO口的输入输出

    一.引脚概述 CC2530有40 个引脚.其中,有21个数字I/O端口,其中P0和P1是8 位端口,P2仅有5位可以使用.P2端口的5个引脚中,有2个需要用作仿真,有2个需要用作晶振.所以可供我们使用 ...

  9. Spring杂谈 | Spring中的AutowireCandidateResolver

    接口定义 用于推断一个特定的beanDefinition是否能作为指定依赖的候选者的策略接口 public interface AutowireCandidateResolver { // 默认情况下 ...

  10. c#一些常用知识点

    UID自动生成随机数 UID.Text = Guid.NewGuid().ToString(); GridView中常用格式化公式 <asp:BoundField DataField=" ...