1. 超市为了促销,按购买货物的款数多少分别给予不同的优惠折扣,具体折扣情况如下: 购物不足100元的,没有折扣; 购物满100元(含100元,下同),不足500元的,减价5%; 购物满500元,不足1000元的,减价8%; 购物满1000元,不足3000元的,减价10%; 购物满3000元的,减价15%。 请设计一个程序根据根据输入的购物款计算出应付款。
javascript
let money =2900
if(money >=3000){
money*=0.85
}else if(money >=1000){
money*=0.9
}else if(money >=500){
money*=0.92
}else if (money >=100){
money *=0.95
}
console.log("您需要支付",money,"元");
php
$money =90;
if($money >=3000){
$money*=0.85;
}else if($money >=1000){
$money*=0.9;
}else if($money >=500){
$money*=0.92;
}else if ($money >=100){
$money *=0.95;
}
echo "您需要支付",$money,"元";
python
money = float(input("请输入一个金额:"))
if money>=3000:
money*=0.85
elif money>=1000:
money*=0.9
elif money>=500:
money*=0.92
elif money>=100:
money*=0.95
print(money)
java
import java.util.Scanner;
public class Hello{
public static void main(String[] args){
// System.out.println("hello ");
Scanner sc = new Scanner(System.in);
// javac -encoding UTF-8 Hello.java
System.out.println("请输入金额:");
int money = sc.nextInt();
// 接收用户输入
if(money >= 3000){
money*=0.85;
}else if(money>=1000){
money*=0.9;
}else if (money >=500){
money*=0.92;
}else if(money >= 100){
money*=0.95;
}
System.out.println(money);
}
}
2.某100人的公司举行年会,入场时为每名员随机分配1-100的号码。现需要设计一个抽奖程序,随机产生10个整数,整数的范围为1-100,作为幸运号码发放奖品,并从生成的整数中获取最大值,发放年终大礼包。
JavaScript
// 循环用于产生10个不重复随机数
let nums = [] // 用于存放随机生成的数字
let i = 0
while(true){
i++
// 判断数组中是否已经有了10个元素
if(nums.length == 30){
break // 退出
}
// 产生随机数
// Math.floor(Math.random()*100) +1
let num = Math.ceil(Math.random()*100)
// 将随机数写入到 数组中 , 返回值是-1 说明没有 才写
if(nums.indexOf(num) == -1){
nums.push(num)
}
}
nums.sort() // 升序 排序
console.log(nums);
console.log(nums[nums.length-1]);
php
$nums = [];
$i = 0;
while (true){
$i++;
// 判断数组长度是否=10
if(count($nums) == 10){
break;
}
// 1. 生成随机数 范围1-100之间,不能重复
$num = mt_rand(1,100); // 大于等于1 小于等于100的随机数
//$nums.push($num); js的写法
if(!in_array($num,$nums)){
array_push($nums,$num);
}
}
sort($nums); // 排序
echo $i;
print_r($nums);
python
import random
# 10个不重复的随机数
# 定义一个空列表
nums = []
i = 0
while True:
i+=1
if len(nums) == 50:
break
# 生成一个随机数 范围是1-100之间
rand = random.randint(1,100)
# 把随机数添加到列表中
# 判断一下,如果列表中没有 才追加
if nums.count(rand) == 0:
nums.append(rand)
nums.sort()
print(nums)
print(i)
------------------------------------------
import random
# 10个不重复的随机数
# 定义一个空列表
nums = []
i = 0
while len(nums) < 10:
i+=1
# 生成一个随机数 范围是1-100之间
rand = random.randint(1,100)
# 把随机数添加到列表中
# 判断一下,如果列表中没有 才追加
if nums.count(rand) == 0:
nums.append(rand)
nums.sort()
print(nums)
print(i)
-------------------------------------------
nums = set()
while len(nums) < 10:
rand = random.randint(1,100)
nums.add(rand)
nums = list(nums)
nums.sort()
print(nums)
print(num[nums.length-1])
java
package study;
import java.util.HashSet;
import java.util.Random;
import java.util.Set;
public class HelloWorld8 {
public static void main(String[] args) {
// 创建一个空集合
Set set1 = new HashSet();
// 创建随机数对象
Random rand = new Random();
while(set1.size()<10){
// 生成随机数
int randnum = rand.nextInt(100)+1;
// 随机数追加到集合中
set1.add(randnum);
}
Object[] list1 = set1.toArray(); // 集合转数组
Arrays.sort(list1); // 排序
System.out.println(list1[list1.length-1]); // 集合
}
}
3.输入某年某月某日,判断这一天是这一年的第几天 (要求用java语言开发控制台程序,要求:要考虑用户体验,如:程序启动时要有欢迎语,用户输入时要有提示,输入错误时要有错误提示等)
JavaScript
let year = Number(prompt("请输入年"))
let month = Number(prompt("请输入月"))
let day = Number(prompt("请输入日"))
// let year = 1800
// let month = 5
// let day = 11
// 用于保存天数
daynum = 0
console.log("今天是",year,"年",month,"月",day,"日");
// 根据当前的年月日,判断在这个月之前所有月份的天数之和 + 当前的日期
switch(month){
case 12: // 当前是12月 + 11月
// daynum = daynum + 30
daynum +=30 // 11月的天数
console.log("我被穿透了 12");
case 11:
console.log("我被穿透了 11");
daynum +=31 // 10月的天数
case 10:
console.log("我被穿透了 10");
daynum +=30 // 9月的天数
case 9:
console.log("我被穿透了 9");
daynum +=31 // 8月的天数
case 8:
console.log("我被穿透了 8");
daynum +=31 // 7月的天数
case 7:
console.log("我被穿透了 7");
daynum +=30 // 6月的天数
case 6:
console.log("我被穿透了 6");
daynum +=31 // 5月的天数
case 5:
console.log("我被穿透了 5");
daynum +=30 // 4月的天数
case 4:
console.log("我被穿透了 4");
daynum +=31 // 3月的天数
case 3:
console.log("我被穿透了 3");
// daynum +=31 // 2月的天数 28天 29天
// 1.能被4整除 却不能被100整除 闰年
// 2.能被400整除的 闰年
// 四年一闰,百年不闰,四百年在闰
if(year % 4 == 0 && year % 100 !=0){
daynum +=29
// console.log(year,"是闰年 1");
}else if (year % 400 ==0){
// console.log(year,"是闰年 2");
daynum +=29
}else{
// console.log(year,"是平年");
daynum +=28
}
case 2:
console.log("我被穿透了 2");
daynum +=31 // 1月的天数
case 1:
console.log("我被穿透了 1");
daynum +=day // 当前月实际日期的天数
}
document.write("当前的第",daynum,"天");
php
$year = 2023;
$month = 12;
$day = 13;
$daynums = 0;
while ($month>=1){
switch ($month){
case 12:case 10:case 7:case 5:
$daynums +=30; // 上一个月的总天数
break;
case 11:case 9:case 8:case 6:case 4:case 2:
$daynums +=31; // 上一个月的总天数
break;
case 3:
// 判断平年闰年
if(($year % 4 == 0 && $year % 100 != 0) || ($year %400==0)){
$daynums += 29;
}else{
$daynums += 28;
}
break;
case 1:
$daynums += $day;
}
$month--; // 11月
}
echo $daynums;
python
# 百钱买百鸡 钱100 鸡100 公鸡5元 母鸡3元 小鸡 1元3只 求:鸡各几只
# 函数:根据年份返回当年2月份的总天数
def getTotalDaysByYear(year):
return 29 if year % 4 == 0 and year % 100 !=0 or year % 400 ==0 else 28
# 判断一年中的第几天
year = int(input("请输入年:"))
month = int(input("请输入月:"))
day = int(input("请输入日:"))
# 统计所有的天数
days = day
month = month - 1 # 当前的月份-1 就是循环的次数
while month >=1:
# 如果是1月
if month == 1 or month == 3 or month == 5 or month == 7 or month == 8 or month == 10: # 总天数31
days += 31
# 如果是2月
elif month == 2: # 2月的总天数 平年2月28 闰年2月29
# 合计
days += getTotalDaysByYear(year)
pass
elif month == 4 or month == 6 or month == 9 or month == 11:
days += 30
month-=1
print(days)
java
package study;
import java.util.Scanner;
public class HelloWorld11 {
// 根据当前年月日判断是一年第几天
public static void main(String[] args) {
// 接收用户的键盘输入
Scanner sc = new Scanner(System.in);
System.out.println("请输入年:");
short year = sc.nextShort();
System.out.println("请输入月:");
byte month = sc.nextByte();
System.out.println("请输入日:");
byte day = sc.nextByte();
short daynums = 0;
while(month>=1){
switch(month){
case 12:case 10:case 7:case 5:
daynums += 30;
break;
case 11:case 9:case 8:case 6:case 4: case 2:
daynums += 31;
break;
case 3:
if(year % 4 ==0 && year %100!=0 || year %400==0){
daynums += 29;
}else{
daynums += 28;
}
break;
case 1:
daynums += day;
break;
}
month--;
}
System.out.println(daynums);
}
}
4.打印所有的水仙花数 水仙花数:是指一个三位数,其各位数字立方和等于该数字本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。(要求用java语言开发控制台程序)
JavaScript
// 水仙花树 153 = 1(3) + 5 (3) + 3(3)
// 百位三次方 + 十位三次方 + 个位三次方 = 这个数本身
// 需求:输出所有的三位数
let num = 100
while(num <1000){
// console.log(num);
// 1.取百位
// console.log(Math.floor(num / 100));
let bai = Math.floor(num / 100)
// 2.取十位
// console.log(Math.floor(num % 100/10) );
let shi = Math.floor(num % 100/10)
// 3.取个位
// console.log(num % 10)
let ge = num % 10
if(bai*bai*bai + shi*shi*shi + ge*ge*ge == num){
console.log(num,"是水仙花数");
}
num++
}
php
$i = 100;
echo "<br>";
while ($i<1000){
// echo $i,"<br>";
// 1.求百位
// echo floor($i/100),"<br>";
$bai = floor($i/100);
// 2.求十位
// echo floor(($i % 100)/10) ,"<br>";
$shi = floor(($i % 100)/10);
// 3.求个位
// echo $i % 10,"<br>";
$ge = $i % 10;
if(pow($bai,3)+pow($shi,3)+pow($ge,3) == $i){
echo $i,"是水仙花数<br>";
}
$i++;
}
python
for num in range(100, 1000):
# 将数字拆分成各个位上的数字
bai= num // 100 # 百位
shi= (num // 10) % 10 # 十位
ge= num % 10 # 个位
# 计算立方和 判断是否是水仙花数
if bai**3 + shi**3 + ge**3 === num
# 输出水仙花数
print(num)
java
package study;
import java.util.Scanner;
public class HelloWorld11 {
// 根据当前年月日判断是一年第几天
public static void main(String[] args) {
// System.out.print("a");
// System.out.print("b");
// 153
int i = 100;
while(i<1000){
//百位
int bai = i/100;
//十位
int shi = i%100/10;
//个位
int ge = i%10;
if(bai*bai*bai + shi*shi*shi + ge*ge*ge == i){
System.out.println(i);
}
i++;
}
}
}
评论 (0)