第二章 C#语法基础 (2.2 C#语言的运算符和表达式)

时间:2021-08-24 10:23:27

【案例】本案例通过随机数发生器随机产生三条边,要求输出三天边长(边长长度为1~20的整数),并判断是否可以构成一个三角形。

如果可以,则计算出三角形面积,否则输出信息”三条随机的边不能构成三角形“。

【案例目的】(1)掌握运算符与表达式的使用。

(2)使用Math、Random系统中常用方法的使用。

【代码及分析】代码如下:

namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
Random random1 = new Random();
float a = random1.Next(, );
float b = random1.Next(, );
float c = random1.Next(, );
Console.WriteLine("第一条边长为" + a);
Console.WriteLine("第二条边长为" + b);
Console.WriteLine("第三条边长为" + c);
if ((a + b) > c && (a + c) > b && (b + c) > a)
{
float q = (a + b + c) / ;
Console.WriteLine("三角形面积为" + Math.Sqrt(q * (q - a) * (q - b) * (q - c)));
}
else
{
Console.WriteLine("三角形随机的边不能构成三角形");
}
Console.ReadLine();
}
}
}

运行结果:

第二章 C#语法基础 (2.2 C#语言的运算符和表达式)

分析:(1)本案例运用了关系表达式和算术表达式。

第二章 C#语法基础 (2.2 C#语言的运算符和表达式)

(2)用产生随机数的Reandom类实例化了一个对象,并调用该类的Next()方法随机产生了三条边。

Next():返回一个整数的随机数。

Next(int maxvalue):返回小于指定最大值的正随机数。

Next(int minvalue,int maxvalue):返回大于等于minvalue且小于minvalue的整数随机数。

NextDouble():返回一个0.0-1.0的double精度的浮点随机数。

(3)调用了Math.Sqrt()方法,实现开方运算。

Math类采用的方法:

Math.Abs(数据类型 x):返回x的返回值。

Math.pow(double x,double y):返回x的y次方。

Math.sqrt(double x):返回x的开根号次方。

第二章 C#语法基础 (2.2 C#语言的运算符和表达式)的更多相关文章

  1. 第二章 C#语法基础(2.1 C#语言的数据类型一)

    C#的数据类型 [案例]本案例实现3位评委给一位选手评分,通过键盘输入各位评委的打分,通过屏幕输出该选手的平均分. [案例目的] (1)掌握变量的定义方式; (2)掌握常用的数据类型; (3)掌握数据 ...

  2. 第二章 C#语法基础(2.1C#语言的数据类型二)

    数据类型案例说明 一.数据类型与变量(计算整数10与20的和) namespace ConsoleApp1 { class Program { static void Main(string[] ar ...

  3. (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md

    第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...

  4. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  5. 《DOM Scripting》学习笔记-——第二章 js语法

    <Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...

  6. 第二章 TCP&sol;IP 基础知识

    第二章 TCP/IP 基础知识   TCP/IP  transmission control protocol and ip internet protocol 是互联网众多通信协议中最为著名的.   ...

  7. Spring学习指南-第二章-Spring框架基础&lpar;完&rpar;

    第二章 Spring框架基础 面向接口编程的设计方法 ​ 在上一章中,我们看到了一个依赖于其他类的POJO类包含了对其依赖项的具体类的引用.例如,FixedDepositController 类包含 ...

  8. JAVA 入门第一章(语法基础)

    本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...

  9. C&num;高级编程 &lpar;第六版&rpar; 学习 第二章:C&num;基础

    第二章 基础 1,helloworld示例: helloworld.cs using System; using System.Collections.Generic; using System.Li ...

随机推荐

  1. jQuery2&period;x源码解析&lpar;回调篇&rpar;

    jQuery2.x源码解析(构建篇) jQuery2.x源码解析(设计篇) jQuery2.x源码解析(回调篇) jQuery2.x源码解析(缓存篇) 通过艾伦的博客,我们能看出,jQuery的pro ...

  2. Python中的闭包

    简单的闭包的栗子: def counter(statr_at = 0): count = 1 def incr(): nonlocal count #注意由于count类型为immutable,所以需 ...

  3. HTML5와 CSS3 적용기

    HTML5의 DTD 선언 <!DOCTYPE html>  HTML5의 인코딩 선언 <meta charset="utf-8">  그리고나서는 새로 ...

  4. Cppcheck代码分析(2)

    功能 解析函数中的可能的代码执行流 函数实际执行中只会执行代码流中的一条流 分析: 分支语句 if-else ,switch-case 循环语句 while, do-while ,for 代码流举例 ...

  5. Kuhn-Munkres算法。带权二分图匹配模板 (bin神小改版本)

    /****************************************************** 二分图最佳匹配 (kuhn munkras 算法 O(m*m*n)). 邻接矩阵形式 . ...

  6. UML类图几种关系总结

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  7. 【其他】Objective-C 内存管理学习总结

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/OC_CG.html 最近学习了Objective-C语言(以下简称OC),其他的都还好,唯有它的内存管理让我不知所 ...

  8. Python面向对象 组合(选课系统示例)

    # Author : Kelvin # Date : 2019/1/15 20:44 """ 学校与老师关联 课程与老师和学校关联 """ ...

  9. &lbrack;转&rsqb;Kindeditor图片粘贴上传&lpar;chrome&rpar;

    原文地址:https://www.cnblogs.com/jsper/p/7608004.html 首先要赞一下kindeditor,一个十分强大的国产开源web-editor组件. kindedit ...

  10. XSS理解与防御

    一.说明 我说我不理解为什么别人做得出来我做不出来,比如这里要说的XSS我觉得很多人就不了解其定义和原理的,在不了解定义和原理的背景下他们可以拿站,这让人怎么理解呢.那时我最怕两个问题,第一个是题目做 ...