第二章 C#语法基础 (2.2 C#语言的运算符和表达式)
【案例】本案例通过随机数发生器随机产生三条边,要求输出三天边长(边长长度为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();
}
}
}
运行结果:

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

(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#语言的运算符和表达式)的更多相关文章
- 第二章 C#语法基础(2.1 C#语言的数据类型一)
C#的数据类型 [案例]本案例实现3位评委给一位选手评分,通过键盘输入各位评委的打分,通过屏幕输出该选手的平均分. [案例目的] (1)掌握变量的定义方式; (2)掌握常用的数据类型; (3)掌握数据 ...
- 第二章 C#语法基础(2.1C#语言的数据类型二)
数据类型案例说明 一.数据类型与变量(计算整数10与20的和) namespace ConsoleApp1 { class Program { static void Main(string[] ar ...
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...
- 第二章:python基础,数据类型
"""第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...
- 《DOM Scripting》学习笔记-——第二章 js语法
<Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...
- 第二章 TCP/IP 基础知识
第二章 TCP/IP 基础知识 TCP/IP transmission control protocol and ip internet protocol 是互联网众多通信协议中最为著名的. ...
- Spring学习指南-第二章-Spring框架基础(完)
第二章 Spring框架基础 面向接口编程的设计方法 在上一章中,我们看到了一个依赖于其他类的POJO类包含了对其依赖项的具体类的引用.例如,FixedDepositController 类包含 ...
- JAVA 入门第一章(语法基础)
本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...
- C#高级编程 (第六版) 学习 第二章:C#基础
第二章 基础 1,helloworld示例: helloworld.cs using System; using System.Collections.Generic; using System.Li ...
随机推荐
- Ruby on Rails Tutorial 第一章笔记
搭建开发环境 作者介绍了 Cloud9\ Coding.net 这样的云端开发环境 安装 Rails 1. 新建 rails 应用 首先,调用 rails new 命令创建一个新的 Rails 应用, ...
- ionic3使用cnpm可能会出现的问题
在跑一个ionic3项目的时候发现,新建的页面无法被识别,总是报错 cannot find modules '../pages/login/login.modules' 在排除多种可能性后,确定了是因 ...
- 一段曾经处理datetime的代码
前记:主要是数据库存储记录时一个属性是以"2019-01"这样的年月进行存储的,当需要根据A年月到B年月取出相关记录时,filter()直接range()是不行的,不是数值区间或者 ...
- javascript中的词法分析
词法分析 JavaScript中在调用函数的那一瞬间,会先进行词法分析. 词法分析的过程: 当函数调用的前一瞬间,会先形成一个激活对象:Avtive Object(AO),并会分析以下3个方面: 1: ...
- Python3+mitmproxy安装使用教程(Windows)
一.安装 1.1 安装mitmproxy 直接使用pip安装即可 pip install mitmproxy pip本质上会一是安装mitmproxy库的相关代码,二是安装mitmproxy.exe/ ...
- nio 序列化
1.序列化 public class SerializeUtils<T extends Serializable> { public byte[] serialize(T t) { byt ...
- Python连接mysql基本操作
创建数据库表 import pymysql # 打开数据库连接 db= pymysql.connect(host='localhost',user="root",password= ...
- vim 插件 -- ctags
vim ctags 插件实现代码跳转的功能.希望在一个项目中快速的找到函数,变量,宏等定义的地方. 下载 http://ctags.sourceforge.net/ 安装 tar -jxvf ctag ...
- UDP协议学习(转)
reference: https://blog.csdn.net/s_lisheng/article/details/73538229 https://blog.cs ...
- Angular2 NgModule 模块详解
原文 https://segmentfault.com/a/1190000007187393 我们今天要学习的是Angular2的模块系统,一般情况下我们使用一个根模块去启动我们的应用,然后使用许多 ...