C#练习 — 第一期(帮助卢锡安给他的女朋友准备晚餐)

2024-01-22 03:52

本文主要是介绍C#练习 — 第一期(帮助卢锡安给他的女朋友准备晚餐),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

纸上得来终觉浅,绝知此事要躬行。我们之前学习了C#许多基础知识,但很少有练习,今天开始,我们将通过练习题的形式,巩固此前学到的知识点,加油!

目录

  • 提示
  • 要求
  • 分步实现
    • 构建框架
    • 预定义烤制时间
    • 剩余时间
    • 准备时间
    • 总时间
    • 调用方法
  • 最终答案
  • 总结

提示

卢锡安的女朋友正在回家的路上,而他还没有准备他们的周年纪念晚餐
在本次练习中,你需要编写一些代码来帮助卢锡安根据他最喜欢的烹饪书烹饪精美的烤宽面条。以下是你需要完成的四个任务

  • Task1:定义预期加热宽面条的时间为40分钟
  • Task2:根据任务一的时间计算烤完面条后剩余的时间
    • 假设烤面条需要花费30分钟
    • 剩余时间 = 40 - 30 = 10分钟
  • Task3:计算烤面条所需要的准备时间
    • 假设每层烤面条需要准备2分钟
    • 多层准备时间 = 层数 x 2分钟
  • Task4:计算烤面条全过程需要的时间
    • 假设一共烤两层,烤面条一共花了20分钟
    • 实际烤制时间 = 准备时间 + 烤箱时间

要求

1、实现定义预期的烤制时间为40分钟
2、实现不同的实际烤制时间+烤制完成后的剩余时间 = 40分钟
3、实现一层或多层面条的准备时间都是2的倍数
4、实现一层或多层面条的实际烤制时间符合运算规则

分步实现

1、构建框架

//声明命名空间system,确保能够使用控制台输出语句
using System;
//定义 Lasagna 类用以封装与烹饪意大利面(Lasagna)相关的逻辑和数据。
class Lasagna
{}

2、实现定义预期的烤制时间为40分钟

using System;
class Lasagna
{
// 定义预期烤制时间public int ExpectedMinutesInOven(){return 40;}    
}

3、计算剩余烤制时间

using System;
class Lasagna
{
// 定义预期烤制时间public int ExpectedMinutesInOven(){return 40;}    // 计算剩余烤制时间public int RemainingMinutesInOven(int elapsedMinutes){int totalExpectedTime = ExpectedMinutesInOven();return totalExpectedTime - elapsedMinutes;}}

4、 计算准备时间

using System;
class Lasagna
{
// 定义预期烤制时间public int ExpectedMinutesInOven(){return 40;}    // 计算剩余烤制时间public int RemainingMinutesInOven(int elapsedMinutes){int totalExpectedTime = ExpectedMinutesInOven();return totalExpectedTime - elapsedMinutes;}
// 计算准备时间public int PreparationTimeInMinutes(int numberOfLayers){return 2 * numberOfLayers;}
}

5、计算已过去的总时间

using System;
class Lasagna
{// 定义预期烤箱中的时间public int ExpectedMinutesInOven(){return 40;}// 计算剩余烤制时间public int RemainingMinutesInOven(int elapsedMinutes){int totalExpectedTime = ExpectedMinutesInOven();return totalExpectedTime - elapsedMinutes;}// 计算准备时间public int PreparationTimeInMinutes(int numberOfLayers){return 2 * numberOfLayers;}// 计算已过去的总时间public int ElapsedTimeInMinutes(int numberOfLayers, int timeInOven){return PreparationTimeInMinutes(numberOfLayers) + timeInOven;}
}

6、 使用类的实例来调用方法

// 使用类的实例来调用方法
class Program
{static void Main(string[] args){var lasagna = new Lasagna();Console.WriteLine(lasagna.ExpectedMinutesInOven());Console.WriteLine(lasagna.RemainingMinutesInOven(30));Console.WriteLine(lasagna.PreparationTimeInMinutes(2));Console.WriteLine(lasagna.ElapsedTimeInMinutes(3, 20));}
}

最终答案

using System;
class Lasagna
{// 定义预期烤箱中的时间public int ExpectedMinutesInOven(){return 40;}// 计算剩余烤制时间public int RemainingMinutesInOven(int elapsedMinutes){int totalExpectedTime = ExpectedMinutesInOven();return totalExpectedTime - elapsedMinutes;}// 计算准备时间public int PreparationTimeInMinutes(int numberOfLayers){return 2 * numberOfLayers;}// 计算已过去的总时间public int ElapsedTimeInMinutes(int numberOfLayers, int timeInOven){return PreparationTimeInMinutes(numberOfLayers) + timeInOven;}
}// 使用类的实例来调用方法
class Program
{static void Main(string[] args){var lasagna = new Lasagna();Console.WriteLine(lasagna.ExpectedMinutesInOven());Console.WriteLine(lasagna.RemainingMinutesInOven(30));Console.WriteLine(lasagna.PreparationTimeInMinutes(2));Console.WriteLine(lasagna.ElapsedTimeInMinutes(3, 20));}
}

总结

通过这个练习,我们不仅复习了C#中类的创建和方法的定义,还实践了如何通过类和方法来封装和处理特定领域的逻辑。喜欢本文的话,点赞收藏关注三连支持一下博主吧!道友们的支持就是我更新的源动力!
回到顶部

这篇关于C#练习 — 第一期(帮助卢锡安给他的女朋友准备晚餐)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/631781

相关文章

豆包 MarsCode 不允许你还没有女朋友

在这个喧嚣的世界里,爱意需要被温柔地唤醒。为心爱的她制作每日一句小工具,就像是一场永不落幕的浪漫仪式,每天都在她的心田播撒爱的种子,让她的每一天都充满甜蜜与期待。 背景 在这个瞬息万变的时代,我们都在寻找那些能让我们慢下来,感受生活美好的瞬间。为了让这份浪漫持久而深刻,我们决定为女朋友定制一个每日一句小工具。这个工具会在她意想不到的时刻,为她呈现一句充满爱意的话语,让她的每一天都充满惊喜和感动

2. c#从不同cs的文件调用函数

1.文件目录如下: 2. Program.cs文件的主函数如下 using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;using System.Windows.Forms;namespace datasAnalysis{internal static

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

RabbitMQ练习(AMQP 0-9-1 Overview)

1、What is AMQP 0-9-1 AMQP 0-9-1(高级消息队列协议)是一种网络协议,它允许遵从该协议的客户端(Publisher或者Consumer)应用程序与遵从该协议的消息中间件代理(Broker,如RabbitMQ)进行通信。 AMQP 0-9-1模型的核心概念包括消息发布者(producers/publisher)、消息(messages)、交换机(exchanges)、

【Rust练习】12.枚举

练习题来自:https://practice-zh.course.rs/compound-types/enum.html 1 // 修复错误enum Number {Zero,One,Two,}enum Number1 {Zero = 0,One,Two,}// C语言风格的枚举定义enum Number2 {Zero = 0.0,One = 1.0,Two = 2.0,}fn m

MySql 事务练习

事务(transaction) -- 事务 transaction-- 事务是一组操作的集合,是一个不可分割的工作单位,事务会将所有的操作作为一个整体一起向系统提交或撤销请求-- 事务的操作要么同时成功,要么同时失败-- MySql的事务默认是自动提交的,当执行一个DML语句,MySql会立即自动隐式提交事务-- 常见案例:银行转账-- 逻辑:A给B转账1000:1.查询

html css jquery选项卡 代码练习小项目

在学习 html 和 css jquery 结合使用的时候 做好是能尝试做一些简单的小功能,来提高自己的 逻辑能力,熟悉代码的编写语法 下面分享一段代码 使用html css jquery选项卡 代码练习 <div class="box"><dl class="tab"><dd class="active">手机</dd><dd>家电</dd><dd>服装</dd><dd>数码</dd><dd

PDF 软件如何帮助您编辑、转换和保护文件。

如何找到最好的 PDF 编辑器。 无论您是在为您的企业寻找更高效的 PDF 解决方案,还是尝试组织和编辑主文档,PDF 编辑器都可以在一个地方提供您需要的所有工具。市面上有很多 PDF 编辑器 — 在决定哪个最适合您时,请考虑这些因素。 1. 确定您的 PDF 文档软件需求。 不同的 PDF 文档软件程序可以具有不同的功能,因此在决定哪个是最适合您的 PDF 软件之前,请花点时间评估您的

C# dateTimePicker 显示年月日,时分秒

dateTimePicker默认只显示日期,如果需要显示年月日,时分秒,只需要以下两步: 1.dateTimePicker1.Format = DateTimePickerFormat.Time 2.dateTimePicker1.CustomFormat = yyyy-MM-dd HH:mm:ss Tips:  a. dateTimePicker1.ShowUpDown = t