
程序由一系列基本 *** 作组成,基本 *** 作有以下几类:
输入(Input)
从键盘、文件或者其他设备获取数据。
输出(Output)
把数据显示到屏幕,或者存入一个文件,或者发送到其他设备。
基本运算
最基本的数据访问和数学运算(加减乘除)。
测试和分支
测试某个条件,然后根据不同的测试结果执行不同的后续 *** 作。
循环
重复执行一系列 *** 作。
你曾用过的任何一个程序,不管它有多么复杂,都是按这几类基本 *** 作一步一步执行的。程序是那么的复杂,而编写程序可以用的基本 *** 作却只有这么简单的几种,这中间巨大的落差就要由程序员去填补了,所以编写程序理应是一件相当复杂的工作。 编写程序可以说是这样一个过程:把复杂的任务分解成子任务,把子任务再分解成更简单的任务,层层分解,直到最后简单得可以用以上几种基本 *** 作来完成。
新定义运算,是指运用某种特殊符号来表示特定的意义,从而解答某些特殊算式的一种运算。
解答新定义运算,关键是要正确地理解新定义的算式含义,然后严格按照新定义的计算程序,将数值代入,转化为常规的四则运算算式进行计算。
新运算就是用“*”“△”“@”等多种符号按照一定的关系“临时”规定的一种运算法则进行的运算。新定义的算式中有括号的,要先算括号里面的。但它在没有转化前,是不适合于各种运算定律的。我们来看一下三种形式的题目。
一、直接计算型
例题1:对于任意数a、b,定义运算“☆”,使a☆b=2a×b
求:(1)1☆2 (2)2☆1
解:(1)1☆2=2×1×2=4
(2)2☆1=2×2×1=4
【解析】这道题目中,首先没有括号,我们只要了解清楚这个式子的含义,以及a、b表示的数值。“☆”表示的是:ab乘积的两倍,其中第(1)问中1就是a,2就是b;第(2)问中,2就是a,1就是b。
例题4:如果1※3=1+2+3=6,5※4=5+6+7+8=26,那么9※5=?
解:9※5=9+10+11+12+13=55
【解析】我们可以发现,1※3表示从1开始加,连续加3个数;5※4表示从5开始加,连续加4个数。所以,9※5应该是从9开始加,连续加5个数。
例题5:“☆”表示一种新运算,使下列等式成立:2☆3=7,4☆2=10,5☆3=13,7☆10=24。按此规律计算:8☆5。
解:8☆5=8×2+5=21
二、找规律型
例题4:如果1※3=1+2+3=6,5※4=5+6+7+8=26,那么9※5=?
解:9※5=9+10+11+12+13=55
【解析】我们可以发现,1※3表示从1开始加,连续加3个数;5※4表示从5开始加,连续加4个数。所以,9※5应该是从9开始加,连续加5个数。
例题5:“☆”表示一种新运算,使下列等式成立:2☆3=7,4☆2=10,5☆3=13,7☆10=24。按此规律计算:8☆5。
解:8☆5=8×2+5=21
三、解方程型
例题6:设a⊙b=3a-2b,已知x⊙4=7,求x。
解:3x-2×4=7
3x-8=7
3x=15
x=5
【解析】带有未知数的时候,转化为方程来求解。
例题7:设a⊙b=4a-2b+ab,求x⊙1=33中的未知数x。
解:4x-2×1+x=33
5x-2=33
5x=35
x=7
解题关键:要正确理解新运算的意义,并严格按新定义的要求,将数值代入新定义的式子进行运算。
注意点:新定义的运算不一定符合交换律,结合律和分配律。
比如,a&b=2a+3b,求(1)2&3&4 (2)2&4&3
解:(1)2&3=2×2+3×3=13 13&4=2×13+3×4=38 ∴2&3&4=38
(2)2&4=2×2+3×4=16 16&3=2×16+3×3=41 ∴2&4&3=41
见代码
using Systemnamespace ConsolApplication1
{
// 简单的数学运算类 SimpleMath
public class SimpleMath
{
// 加
public double Add(double a, double b)
{
return a + b
}
//
public double Subtract(double a, double b)
{
return a - b
}
// 乘
public double Multiply(double a, double b)
{
return a * b
}
// 除
public double Divide(double a, double b)
{
return a / b
}
// 平方根
public double Sqrt(double a)
{
return Math.Sqrt(a)
}
// 幂
public double Power(double a, int n)
{
double r = 1
for(int i=1 i<=ni++)
{
r *= a
}
return r
}
}
class Program
{
static void Main(string[] args)
{
// 实例化简单算术类SimleMath
SimpleMath sm = new SimpleMath()
double r = sm.Add(100, 200)
Console.WriteLine(r)
r = sm.Subtract(200 , 100)
Console.WriteLine(r)
r = sm.Multiply(2.0, 3.0)
Console.WriteLine(r)
r = sm.Divide(100, 5)
Console.WriteLine(r)
r = sm.Sqrt(80)
Console.WriteLine(r)
r = sm.Power(10, 3)
Console.WriteLine(r)
}
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)