java第一次作业(二)

先写思路,再写代码,思路清晰,才能写对代码

7-6 求1+2+...+n的和

 思路:

运用expression的字符串输出

重点:

expression输出

代码:
import java.util.Scanner;
public class Main {
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        scanner.close();

        int sum = 0;
        String expression = "";
        for(int i = 1;i<=n;i++)
        {
            sum += i;
            if(i<n){
            expression +=i+"+";
            }
            else{
                expression +=i;
            }

        }

        expression +="="+sum;
        System.out.println(expression);
    }


}
知识点:

expression输出

7-7 数字三角形(上三角)

思路:

充分运用两个for循环,一个掌控行数,一个掌控输出的数字

代码:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int m = n;
        scanner.close();
        int number = 1; // 当前要输出的数字

       for (int i = 1; i <= n; i++)
        {
            // 输出前置空格,以形成上三角的效果

                System.out.print("");
                // 输出当前层的数字
                for (int k = 1; k <= m; k++) {
                    // 每个数字占四个字符位置,不足部分用空格填充
                    System.out.printf("%4d", number++);
                }
                m--;
                System.out.println(); // 每层输出后换行
        }
    }
}
知识点:

输入

 int n = scanner.nextInt();  //输入n
 int m = scanner.nextInt();  //输入m
                             //需要输入两次

数字所占空格

for (int k = 1; k <= m; k++) {
                    // 每个数字占四个字符位置,不足部分用空格填充
                    System.out.printf("%4d", number++);
                }

换行

 System.out.println(); // 每层输出后换行

7-8 百钱买百鸡

思路:

这种复杂的配凑问题,不要去想枚举去解,充分利用for循环语句

像这题我们就用了两个for循环,让代码自己去配凑,一但成功就输出它

代码(一):
public class Nain {
    public static void main(String[] args) {
        final int totalMoney = 100; // 总共有100块钱
        final int totalChickens = 100; // 总共有100只鸡

        // 公鸡价格5块一只,母鸡价格3块一只,小鸡三只1块
        for (int male = 0; male <= totalMoney / 5; male++) { // 公鸡数量
            for (int female = 0; female <= totalMoney / 3; female++) { // 母鸡数量
                int chicks = totalChickens - male - female; // 小鸡数量
                int moneySpent = male * 5 + female * 3 + (chicks / 3); // 花费的总钱数

                // 检查是否满足条件:钱数总和是否为100,且小鸡数量是3的倍数
                if (moneySpent == totalMoney && chicks % 3 == 0) {
                    // 输出结果
                    System.out.println(male + "只公鸡," + female + "只母鸡," + chicks + "只小鸡");
                }
            }
        }
    }
}
代码一缺点:

不能控制数字的所占的位置

知识点:

定义变量

   final int totalMoney = 100; // 总共有100块钱
        final int totalChickens = 100; // 总共有100只鸡
代码(二):

public class Main{
   public static void main(String[] args){
        final int qian =100;
        final int ji   = 100;
       for(int male=0;male<=qian/5;male++){
            for(int fmale = 0;fmale<=qian/3;fmale++){
                int chk =ji -male-fmale;
                int huaqian = male * 5 +fmale *3 +chk / 3;
                if(huaqian==qian && chk %3==0)
                {
                    System.out.printf("公鸡%2d只,母鸡%2d只,小鸡%2d只",male,fmale,chk);
                    System.out.println();
                }
                
            }
       }
   }


}
代码二优点:

可以控制数字的所占位置

知识点:
System.out.printf("公鸡%2d只,母鸡%2d只,小鸡%2d只",male,fmale,chk);

控制所占位置

总结:

到这里,java第一次作业就写完了,以后要学习课程跟着走,不落后,从现在开始每两天一题打卡,继续学习java。

不要为了敲代码而敲,主要是学习,总结,进步,收获。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/485959.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue.js前端开发零基础教学(三)

目录 2.6 计算属性 2.7侦听器 2.8 样式绑定 2.8.1 绑定class属性 2.8.2 绑定style属性 2.9 阶段案例——学习计划表 2.6 计算属性 概念&#xff1a;Vue提供了计算属性来描述依赖响应式数据的复杂逻辑。 计算属性可以实时监听数据的变化&#xff0c;返回一个计算…

爬虫Day3

用到的网页--豆瓣电影Top250 需要爬取信息&#xff1a; 数据保存在网页源代码中&#xff0c;是服务加载方式。先拿到网页源代码--request。再通过re提取想要的信息---re。 新知识&#xff1a;用csv存数据&#xff0c;可以用excel表格展示数据 import csv result obj.findite…

AI大模型引领未来智慧科研暨ChatGPT在地学、GIS、气象、农业、生态、环境等领域中的应用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

浅谈WPF之MVVM工具包

在之前的WPF示例中&#xff0c;都会用到一个MVVM框&#xff0c;也是一个比较常的MVVM框架&#xff0c;就是MVVM工具包【CommunityToolkit.Mvvm】&#xff0c;今天专门以一个简单的小例子&#xff0c;简述一下MVVM工具包的常见用法&#xff0c;仅供学习分享使用&#xff0c;如有…

Docker 安装 Nginx 容器,反向代理

Docker官方镜像https://hub.docker.com/ 寻找Nginx镜像 下载Nginx镜像 docker pull nginx #下载最新版Nginx镜像 (其实此命令就等同于 : docker pull nginx:latest ) docker pull nginx:xxx #下载指定版本的Nginx镜像 (xxx指具体版本号)检查当前所有Docker下载的镜像 docker…

Spring Security之认证过滤器

前言 上回我们探讨了关于Spring Security&#xff0c;着实复杂。这次咱们聊的认证过滤器就先聊聊认证功能。涉及到多方协同的功能&#xff0c;咱分开聊。也给小伙伴喘口气&#xff0c;嘻嘻。此外也是因为只有登录认证了&#xff0c;才有后续的更多功能集成的可能。 认证过滤器…

unity学习(69)——多人位置同步

简单的很&#xff0c;每个客户端向服务器发送位置信息&#xff0c;服务器再把这些位置信息发送给其他客户端。 1.客户端发送。 1.1在SocketModel脚本中添加一个新的类MoveDTO public class MoveDTO {public string Id{get; set;}public int Dir{get;set;}public Assets.Mode…

Leetcode第13题:罗马数转为十进制数

利用等价换算法将罗马数转为十进制数 class Solution:def romanToInt(self, s: str) -> int:roman_map{I:1,V:5,X:10,L:50,C:100,D:500,M:1000}before_val,countroman_map[s[0]],0for c in s:valroman_map[c]if val<before_val:countvalelse:countcount-val2*(val-befor…

echarts 柱形图如何让其中一个柱子的颜色跟其他柱子不同

如何让其中一个柱子的颜色跟其他柱子不同 series: [{data: [120,// 使用对象的形式&#xff0c; value代表当前值, itemStyle设置样式{value: 200,itemStyle: {color: #a90000}},150,80,70,110,130],type: bar}]设置单个柱子颜色&#xff1a; 柱形图单个柱子颜色: https://e…

c 语言 三元搜索 - 迭代与递归(Ternary Search)

计算机系统使用不同的方法来查找特定数据。有多种搜索算法&#xff0c;每种算法更适合特定情况。例如&#xff0c;二分搜索将信息分为两部分&#xff0c;而三元搜索则执行相同的操作&#xff0c;但分为三个相等的部分。值得注意的是&#xff0c;三元搜索仅对排序数据有效。在本…

video.js自定义预览组件-旋转、下载、画中画、放大缩小功能

使用video.js实现视频播放功能 效果图 - 这里以弹窗展示为例 注意&#xff1a;记得安装video.js插件&#xff01;&#xff01;&#xff01; 代码 父级使用&#xff1a; videoPreview.vue文件 <!-- 视频预览组件 --> <template><el-dialogid"previewFi…

【战略前沿】丹麦正在建造一台英伟达人工智能超级计算机

【原文】Denmark is building an Nvidia AI supercomputer 【作者】Linnea Ahlgren 它将于今年上线&#xff0c;并以新的量子计算软件为特色。 过去一年最大的赢家——芯片制造商英伟达&#xff08;Nvidia&#xff09;和制药制造商诺和诺德&#xff08;Novo Nordisk&#xff0…

【C语言】linux内核pci_alloc_irq_vectors

一、注释 代码中包含了几个关于PCI&#xff08;外围组件互联&#xff09;设备中断请求&#xff08;IRQ&#xff09;向量分配的函数&#xff0c;以及内联函数声明&#xff0c;下面是对这些函数的中文注释&#xff1a; static inline int pci_alloc_irq_vectors_affinity(struc…

曲线生成 | 图解Reeds-Shepp曲线生成原理(附ROS C++/Python/Matlab仿真)

目录 0 专栏介绍1 什么是Reeds-Shepp曲线&#xff1f;2 Reeds-Shepp曲线的运动模式3 Reeds-Shepp曲线算法原理3.1 坐标变换3.2 时间翻转(time-flip)3.3 反射变换(reflect)3.4 后向变换(backwards) 4 仿真实现4.1 ROS C实现4.2 Python实现4.3 Matlab实现 0 专栏介绍 &#x1f5…

【竞技宝】DOTA2:lou神带队速推 AR力克Zero晋级决赛

北京时间2024年3月24日,DOTA2梦幻联赛S23中国区预选赛正在进行之中,昨日进行了本次预选赛的胜者组决赛Zero对阵AR。本场比赛双方前两局战至1-1平,决胜局AR选出一套前期进攻性十足的阵容早早取得优势,最终AR鏖战三局力克Zero晋级决赛。以下是本场比赛的详细战报。 第一局: Zero…

第九篇【传奇开心果系列】Python自动化办公库技术点案例示例:深度解读Python处理PDF文件

传奇开心果博文系列 系列博文目录Python自动化办公库技术点案例示例系列 博文目录前言一、重要作用介绍二、Python库处理PDF文件基础操作和高级操作介绍&#xff08;一&#xff09;基础操作介绍&#xff08;二&#xff09;高级操作介绍 三、Python库处理PDF文件基础操作示例代码…

ESP8266制作WIFI音箱

首先是设备截图 使用的技术: 1、Esp8266播放网络音乐 2、自己搭建一个音乐播放服务,这样播放的内容就由自己而定了,将你的服务对接支付宝,就可以实现支付宝收款语音播报了 代码 esp8266代码 #include <Arduino.h>#ifdef ESP32#include <WiFi.h> #else#inc…

(AtCoder Beginner Contest 325) ---- D - Printing Machine -- 题解

目录 D - Printing Machine&#xff1a; 题目大意&#xff1a; 思路解析&#xff1a; 代码实现&#xff1a; D - Printing Machine&#xff1a; 题目大意&#xff1a; 思路解析&#xff1a; 打印一次后&#xff0c;需要充电一微秒后才能再次打印就可以看作每微妙只能打印一…

2024年3月GESP认证Python编程一级真题试卷

2024年3月GESP认证Python编程一级真题试卷 题目总数&#xff1a;27 总分数&#xff1a;100 选择题 第 1 题 单选题 小杨的父母最近刚刚给他买了一块华为手表&#xff0c;他说手表上跑的是鸿蒙&#xff0c;这个鸿蒙是&#xff1f;&#xff08; &#xff09;。 A.小程…

03. 【Android教程】Genymotion 的安装与使用

在上一章中我们在 Eclipse 当中创建了 AVD&#xff0c;由于性能差只适合测试小型 App。这里将推荐一款性能更佳的 Android 模拟器—— Genymotion。首先我们看看 Genymotion 好在哪里。 1. Genymotion 优势 Genymotion 相对于内置模拟器有如下优势&#xff1a; 运行速度快、画…