教教我,pascal语言
找个老师,买本书,学呗
信息学的学习是一个漫长且艰苦的历程,需要自己的不懈努力。
我可以给你介绍一本书,书名是《NOI程序设计和基本算法》是西安电子科技大学出版社的。你可以自己学习,不会的问题常问问。
祝你学业有成!!
以法国数学家命名的Pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。
2、组成部分
(1)程序首部
例1.1的第一行称为程序首部。program是保留字,接着是程序名(由你依据“标示符”规则自行定义),最后以分号表示程序首部结束,下面是程序主体的开始。程序首部在一个Turbo Pascal(仅在Turbo Pascal中有效)程序中并非必须出现,它是可选的。写上它仅起了文档作用。因此,在时间有限的情况下,如果用Turbo Pascal编程完全可以省略程序首部。
(2)程序体 a.说明部分
说明部分用于定义和说明程序中用到的数据,由单元说明、标号说明、常量说明、类型说明、变量说明、函数或过程说明组成,并且这些数据的说明次序必须按照以上次序。但是一个简单的Turbo Pascal程序也可以不包含说明部分,也就是说说明部分是可选的。
b.执行部分
执行部分描述了程序要执行的操作。它必须以一个Turbo Pascal保留字begin开始,以保留字end后跟句点结束,其间是一些执行具体操作的语句,并且以分号作为语句之间的分隔符。begin 和end必须成对出现,这是一个Turbo Pascal程序所必须有的。紧跟end之后的句号表示执行部分的结束,也表示整个程序的结束。此后的任何语句都无效。Turbo Pascal规定紧随end之前出现的分号允许省略。
(3)一个完全的Pascal程序结构
program 程序名;
uses
已知单元说明;
label
标号说明;
const
常量说明;
type
类型说明;
var
变量说明;
function
函数说明;
procedure
过程说明;
begin
语句;
语句;
……
语句
end
3、一)常量
在程序运行过程中,其值不能被改变的量称为常量。如123,145.88,'abc',true等。
⒈整型常量
整型常量采用我们平常使用的十进制整数表示。如138,0,-512等都是整型常量,而18.或18.0都不是整型常量。
pascal中有一个标准标识符Maxint,它代表所使用的计算机系统允许的最大整型数,而最小的整型数即为-Maxint-1。
Turbo Pascal还定义了长整数常量MaxLongInt,其值为2147483647。
⒉实型常量
实型常量包括正实数、负实数和实数零。pascal中表示实型常量的形式有两种。
⑴十进制表示法
这是人们日常使用的带小数点的表示方法。
如0.0,-0.0,+5.61,-8.0,-6.050等都是实型常量,而0.,.37都不是合法的实数形式。
⑵科学记数法
科学记数法是采用指数形式的表示方法,如1.25×105可表示成1.25E+05。在科学记数法中,字母"E"表示10这个"底数",而E之前为一个十进制表示的小数,称为尾数,E之后必须为一个整数,称为"指数"。如-1234.56E+26 , +0.268E-5 , 1E5是合法形式,而.34E12 , 2.E5 , E5 ,E,1.2E+0.5都不是合法形式的实数。
无论实数是用十进制表示法还是科学表示法,它们在计算机内的表示形式是一样的,总是用浮点方式存储。
和整数相比,实数能表示的范围大得多,但值得注意的是实数的运算整数的运算速度慢且无法像整数那样精确表示,只能近似表示。 ⒊字符常量
在Pascal语言中,字符常量是由单个字符组成,所有字符来自ASCII字符集,共有256个字符。在程序中,通常用一对单引号将单个字符括起来表示一个字符常量。如:'a','A','0'等。特殊地,对于单引号字符,则要表示成''''。对于ASCII字符集中,按每个字符在字符集中的位置,将每个字符编号为0-255,编号称为对应字符的序号。
4.布尔常量
布尔型常量仅有两个值,真和假,分别用标准常量名true和false表示。它们的序号分别为1和0。
5.符号常量
一个常量即可以直接用字面形式表示(称为直接常量, 如 124,156.8),也可以用一个标识符来代表一个常量,称为"符号常量"。但符号常量必须在程序中的说明部分定义,也就是说先定义,后使用。
定义符号常量的一般格式:
CONST
<常量标识符>=<常量>
说明:常量说明部分以关键字const开头, 后面的标识符为常量标识符,其中"="号后的常量为整数、实数、字符、字符串(字符、字符串常量在后面章节中将作介绍)。而且,在常量说明部分可以将几个常量说明成符号常量,共用一个关键字"const"。例如:
则在本程序中pi和zero作为符号常量,分别代表实数3.14159和整数0。也就是说,常量说明部分既定义了常量名及其值,又隐含定义了常量的类型。 关于符号常量,应注意下列几点:
⑴符号常量一经定义,在程序的执行部分就只能使用该常量标识符,而不能修改其值。
⑵使用符号常量比直接用数值更能体现"见名知义"的原则,也便于修改参数,故一个较好的程序中,应尽量使用符号常量,在执行部分基本上不出现直接常量。
4、Pascal 提供了丰富的数据类型,这些数据类型可以分为三大类:简单类型、构造类型和指针类型,其中简单类型可以分为标准类型(整型、实型、字符型和布尔型)和自定义类型(枚举型和子界型),构造类型可以分为数组类型、集合类型、记录类型和文件类型。这些数据类型中除了指针类型是动态数据类型外,其他的都是静态数据类型。在这些数据类型中简单类型都是有序类型,除了实型以外的简单类型都是顺序类型,所谓顺序类型就是他们的值不仅是有序的而且是有顺序号。
PASCAL一点也不难学它应该是介于BASIC和C之间的高级语言。
结构化程序设计思路由E.W.Dijkstra 和C.A.R.Hoare提出。
pascal语言程序由说明和语句组成
说明指变量说明等
语句指begin end 所包含内容
三个标准常量false,true,maxint
数据类型,整型,实型,字符型,布尔型
var i,n,t,c,d:byte;
w:word;
s,p:array[1..50]of byte;
f:array[1..50]of boolean;
procedure add;
var k:byte;
begin
for k:=1 to n do
if f[k] then inc(w,p[k]);
end;
procedure cut;
var k:byte;
begin
for k:=1 to n do
if f[k] then dec(w,p[k]);
end;
procedure print;
var i:byte;
begin
for i:=1 to d do write(s[i],' ');
writeln;
writeln(w);
end;
procedure dfs;
var j:-1..1;
k:byte;
begin
if d=n then begin print;exit;end;
for j:=-1 to 1 do
if (j<>0)and(f[c+j]) then begin
inc(d);
s[d]:=c+j;
f[c+j]:=false;
add;
dfs;
dec(d);
cut;
f[c+j]:=true;
end;
end;
begin
readln(n,c);
for i:=1 to n do readln(t,p[t]);
t:=0;
fillchar(f,sizeof(f),false);
dfs;
end.
有好多呢,这里说不完的
你可以登陆www.flyioi.com去看看。
http://www.dqdn.cn/c/看看吧,我准备竞赛了,应该对你十分有益
教教我,pascal语言
1、Pascal是一种计算机通用的高级程序设计语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立。以法国数学家命名的Pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。2、组成部分 (1)程序首部 例1.1的第一行称为程序...
谁能教教我pascal语言中的指针如何进行实际运用?
pascal语言中指针类型和动态数据结构 整型、实型、布尔型等各种简单类型和数组、记录、集合等各种结构类型的数据都属于静态类型的数据。所谓静态类型数据是指使用前必须在程序的说明部分给出描述这种数据的类型说明(TYPE语句)或变量说明(VAR语句),以定义这类数据占用内存空间的大小规模,使系统在程序的编...
大牛教我PASCAL读入后怎么建立邻接表
const n=10; e=20; {n为顶点数,e为边数} type edge=^edgenode;edgenode=record {边节点信息} adj:1..n; {边的终点(链接点)} weight:integer;{该边上的权,无权图可以省去} next:edge; {指向下一条边的链接} end;vex=record data:integer;lind:edge;end;var s:edgenod...
有没有高手..教教我pascal中的链表
链表就是用指针连接的数列,每一个指针存储下一个变量的地址。事例:head->节点1->节点2->节点3 每一部分成为一个节点,每个节点分为数据项和指针项。链表的第一个节点叫表头,最后一个叫表尾,称为指针域。
pascal是怎样的语言,我初学,请指教
PASCAL语言也是一种算法语言,它是瑞士苏黎世联邦工业大学的N.沃思(Niklaus Wirth)教授于1968年设计完成的,1971年正式发表。1975年,对PASCAL语言进行了修改,作为"标准PASCAL语言"。PASCAL语言是在ALGOL 60的基础上发展而成的。它是一种结构化的程序设计语言,可以用来编写应用程序。它又是一种系统程序...
我有个白痴的问题,关于Pascal的。
我有个白痴的问题,关于Pascal的。 谁能教我如何使用Pascal程序软件来编程。呵呵。在软件中编好程后,输入数字或直接输出,这应该怎样操作... 谁能教我如何使用Pascal程序软件来编程。呵呵。在软件中编好程后,输入数字或直接输出,这应该怎样操作. 展开 我来答 4...
pascal高手教教我啊!!!
n:=0;s:=s+n;s>m
求一PASCAL大牛教我随机算法...
所以,在快速排序中加入随机化算法无疑是十分重要的。运用在:(1)数据读入时,随机排放数据位置。(2)中间点的枚举进行多次随机化后决定。这样就基本上将快速排序的时间复杂度维持在最好状态。如有不明,Q我:1027321803 某沙茶写\/贴 参考资料:百度文库 ...
我会用PASCAL,但我不会用动态规划,谁能教教我
我会用PASCAL,但我不会用动态规划,谁能教教我 本人刚开始学习动态规划这一算法不久,比较菜,像高手请教,贡献几道动规的题目,简单的说明。希望在提问结束前能够在回答中添加状态转移方程和简单说明……多谢!... 本人刚开始学习动态规划这一算法不久,比较菜,像高手请教,贡献几道动规的题目,简单的说明。 希望在...
哪位高手给我讲一下pascal递归与回朔?
一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。因此,在考虑使用递归算法编写程序时,应满足两点:1)该问题能够被递归形式描述;2)存在递归结束的边界条件。递归的能力在于用有限的语句来定义对象的无限集合。用递归思想写出的程序往往...
星裴固经: Pascal是一种计算机通用的高级程序设计语言.Pascal的取名是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal.它由瑞士Niklaus Wirth教授于六十年代末设计并创立.Pascal语言语法严谨,层次分明,程序易写,具有很强的可读性,是第一个结构化的编程语言.
鄂城区15545184783: Pascal 语言是什么 - ?
星裴固经: Pascal语言概述与预备知识 1 关于Turbo PascalPascal是一种计算机通用的高级程序设计语言.它由瑞士Niklaus Wirth教授于六十年代末设计并创立.以法国数学家命名的Pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有...
鄂城区15545184783: 谁会pascal语言的教教我? - ?
星裴固经: Pascal中基本符号以及保留字: pascal语言只能使用一下几类基本符号: (1)大小写英文字母 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z (2)数字 1 2 3 4 5 6 7 8 9 0 (3)其他符号 + - * / = <> ...
鄂城区15545184783: pascal语言?
星裴固经: pascal我懂基本的: 1.程序以“program”关键字开头,比如 program test; 2.变量声明,例如: var a:integer; {声明一个整型变量a} 3.变量赋值,例如: a:=3; {把3赋给a} 4.pascal对大小写不敏感 5.一个完整的程序示例(从键盘输入2个数,求和): program test; var a,b,sum:integer; begin writeln('请输入2个数:'); readln(a,b); sum:=a+b; writeln('它们的和为',sum); end.
鄂城区15545184783: .输入10个数,打印出最大和最小的数.用pascal语言.谁知道?教教我! - ?
星裴固经: 很简单,下面这样就可以:program exp; var i,x,min,max:integer; begin for i:=1 to 10 do begin read(x); if (i=1) or (x>max) then max:=x; if (i=1) or (x<min) then min:=x; end; writeln('最大的数是:',max,',最小的数是:',min); end.说明,以上程序未上机编译,如果遇到问题请补充.
鄂城区15545184783: pascal是怎样的语言,我初学,请指教 - ?
星裴固经: PASCAL语言也是一种算法语言,它是瑞士苏黎世联邦工业大学的N.沃思(Niklaus Wirth)教授于1968年设计完成的,1971年正式发表.1975年,对PASCAL语言进行了修改,作为"标准PASCAL语言". PASCAL语言是在ALGOL 60的基础...
鄂城区15545184783: Pascal语言编程的格式和使用方法?
星裴固经: 输出换行:writeln分号是每一句话末尾的标志.如:program aaa;编译,运行的快捷键:Ctrl+F9查看数据结果的快捷键:Alt+F5
鄂城区15545184783: 什么是计算机pascal语言??
星裴固经: 我是学Delphi的,但是Delphi的核心语言就是Pascal Pascal介绍 PASCAL是一种结构程序设计语言,由瑞士苏黎世联邦工业大学的沃斯(N.Wirth)教授研制,于1971年正式发表.是从ALGOL60衍生的,但功能更强且容易使用.目前,作为一个...
鄂城区15545184783: pascal 语言谁懂?怎样学? - ?
星裴固经: Pascal是一种计算机通用的高级程序设计语言.Pascal是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的操作语句,适于描述数值和非数值的问题. 正因为上述特点,Pascal语言可以被方便地用于描述各种算法与数据结构.尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯.要学PASCAL就要先学格式再学基础然后学数据结构最后学算法就够了,要多看书去理解不要死记硬背; 前面基础不慢慢打,学到后面会什么也听不懂.
鄂城区15545184783: 有什么能帮助我学习Pascal啊?给我些技巧或告诉我语言也行,介 ?
星裴固经: 这本《Delphi 2程序设计大全》书首选的好书 还有就是《Delphi 5开发人员指南》这本书 也还好 你去看看