已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 编程 > 其他编程语言 > 教程

标题: 高中数学Basic语言参考

作者: @Ta

时间: 2012-02-18

点击: 7636

论坛搜索关键字:Basic VB 高中 数学 算法 程序 编程 
 
 这贴是高中数学中的Basic语言的参考,数学中的Basic是很简单的,它仅仅只能用来表达算法。如果你想用它写出可执行的程序,请学习ANSI Basic或VB的语法。 
 

『一:运算符』 
* 乘 
/ 除 
+ 加 
- 减 
MOD 求余数(相当于PHP和C的%符号) 
> 大于 
>= 大于或等于 
< 小于 
<= 小于或等于 
<> 不等于 
= 赋值/相等(在IF或其他条件执行的语句中是判断相等,否则是赋值) 
AND 逻辑与、且
OR 逻辑或、或者
NOT 逻辑非(否定)

 
『二:基本语法』 
1、一条语句占一行,在Basic中不可把多条语句写在同一行 
2、语句结尾不要加分号,请PHP和C程序员注意。在Basic中,分号用来分隔不同类型的参数 
例: 
INPUT "输入3个数:" ; a,b,c 
PRINT "你输入的是:" ; a,b,c 
d=a+b+c 
PRINT "a+b+c=" ; d 

 
『三、关键字』 
1.变量 
 变量名以字母开头,后接字母或数字,这与C相同。变量名不建议使用下划线。不要在变量名前面加美元符$(PHP程序员注意)
 变量有时是不区分大小写的,有时又区分大小写(混乱的情况),所以自己写时不要出现大小写混用;当出现大小写混乱时,也不要疑惑。
  
2.输入输出语句

PRINT 输出表达式的值
 PRINT支持多参数,用逗号分隔,如
PRINT 1,3,5,a,9,b
 也可以输出字符串
PRINT "你好"
 注意:不要输出奇怪的内容,否则可能被人工判断为语法错误
 如果要同时输出字符串和数字,那么必须用分号(;)分开它们:
PRINT "x,y,z=" ; x,y,z
不建议更复杂的写法(如PRINT "x=" ; x ; "y=" ; y ; "z=" ; z),可能被人工误判。

 如果你要输出
x= 5
y= 6
z= 7
 这样的效果,建设你用三条PRINT语句,而不是把它们写在一条语句里。
 用于分隔多个值的分号会产生一个空格,而逗号会直接被输出(所以字符串和数之间要加分号而不是逗号)。每条PRINT语句结尾都会自动加上一个换行(不建议使用任何转义字符,比如"\n"什么的)。以下语句:
PRINT 5,6,7
PRINT "x,y=" ; 8,9
 将得到以下输出
5,6,7
x,y= 8,9
 建议不要太在意输出排版,只要正确输出就行了


 特别说明:不建议把字符串赋给变量。
text="如此如此这般这般"
PRINT text
 虽然对我们来说太正常了,但是别人也许很难理解。所以大家可以认为变量永远都是实数型的,只能存放数值(整数和小数都可以,而且假定不会因为数值过大而溢出)。
 另外,变量的初始值是不确定的(不一定是0),所以在对变量进行大小比较或输出之前,请确保你曾经给它赋过值。


INPUT 从用户输入中取得所需的值。例:
INPUT x
 执行到此处后,程序等待用户输入(只支持数字,输入完后回车),并把数字赋给x。如果用户输入错误,也许将出现不可预料的情况(我们不必考虑这些)。
 不建议对用户输入是否正确做过多的判断,因为我们只是在描述算法,而不是真的写程序,所以就当用户的输入都是正确的,直接往下走就行了。

 如果要同时取得多个值,也是可以的:
PRINT x,y,z
 此时用户必须输入类似“3,5,9”这样的字符串才能使程序正常进行。但是我们依然不必关心错误处理。
 你也可以先显示一段提示语给用户,再要求用户输入:
INPUT "x=" ; x
INPUT "y,z=" ; y,z
 更复杂的语法(如INPUT "a=" ; a ; "b=" ; b)虽然可用,但为了保持“兼容性”而不建议使用。


与标准C的对照:
INPUT "请输入a,b,c的值:" ; a,b,c
PRINT "你好" ; a,b,c
 对应C语言中的
double a,b,c; //a,b,c不是整型而是双精度小数型
printf("请输入a,b,c的值:");
scanf("%f,%f,%f\n",&a,&b,&c);
printf("你好 %f,%f,%f\n",a,b,c);
//%f:用十进制小数格式输出实数



3、条件语句
IF …… THEN
 ……
ELSE
 ……
END IF
如果 …… 就执行
 …这里…
否则执行
 …这里…
如果结束
可以不要ELSE部分,直接这样:
IF a>5 THEN
 b=a/2
 a=0
END IF
如果IF或ELSE后紧跟的只有一条语句,可以不要折行,并且不要END IF:
IF a<5 THEN b=a*2
ELSE b=a/2
 提示:
(1) ELSE IF语句是可用的,但不要写成ELSEIF。同样的END IF也要有明确的空格。
(2) 不要漏写IF条件后面的THEN,不要漏写END IF,新手很容易出现该问题,特别是忘了THEN。
(3) 不同于C,Basic可以不给条件加括号(因为有了空格和THEN);也不使用大括号括起代码块(取而代之的是用THEN、ELSE、END IF做为代码块的分界线)。
 与C对照:
INPUT x
IF x>5 AND x<70 THEN
 PRINT "5<x<70"
ELSE IF x<=5 THEN
 PRINT "x<=5"
ELSE
 PRINT "x>=70"
END
 用C实现:
『好吧,补充一点,不要把END IF写成END了。我就不小心写错了。』
C源码(仅演示):
double x;
scanf("%f\n",&x);
if(x>5 && x<70)
{
 printf("5<x<70\n");
}
else if(x<=5)
{
 printf("x<=5");
}
else
{
 printf("x>=70");
}
『睡眠优先,zzzZZ』

[隐藏样式|查看源码]


『回复列表(13|隐藏机器人聊天)』

1. 沙发,老虎收不到内信么?
(/@Ta/2012-02-17 17:04//)

2. 不管是老虎会游泳还是虎符图腾都没有收到。你肯定发错人了。
(/@Ta/2012-02-17 17:26//)

3. 那么醒目的uid1怎么会错。
我又发了一条,能收到么?
(/@Ta/2012-02-17 17:36//)

4. 像这样的课你们怎么上?
难到在数学作业本上搭建一个Basic运行环境。
(/@Ta/2012-02-17 18:27//)

5. Mobile BASIC V1.8.6(通用JAVA)
(/@Ta/2012-02-17 18:32//)

6. 好吧,高一正在学
(/@Ta/2012-02-17 18:46//)

7. 感觉你们是课改了。我没学这多。
(/@Ta/2012-02-17 18:54//)

8. 就是,有选修了
(/@Ta/2012-02-17 19:17//)

9. 表示我们是必修,所以急人呀
(/@Ta/2012-02-17 19:25//)

10.
→→→→→


路过…………………………


O(∩_∩)O~


………←End→………
(/@Ta/2012-02-17 23:28//)

11. 高考只考一道填空题,很简单
(/@Ta/2012-02-18 07:50//)

12. 老虎,我看好你,我们现在就在学这
(/@Ta/2012-10-02 20:34//)

13. 四川高中数学必修三第一章是讲算法的,高考要考
(/@Ta/2013-01-01 20:49//)

回复需要登录

9月18日 00:44 星期四

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1