Pascal でのプログラミングの基礎。 プレゼンテーション。 コンピューター サイエンスにおける Pascal に関する Pascal の基礎プレゼンテーション
スライド 1
プログラミング言語 パスカル・ボグダノフ・ウラジミール 無料プレゼンテーション http://prezentacija.biz/スライド 3
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img2.jpg)
スライド 4
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img3.jpg)
スライド 5
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img4.jpg)
スライド 6
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img5.jpg)
スライド 7
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img6.jpg)
スライド 8
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img7.jpg)
スライド 9
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img8.jpg)
スライド 10
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img9.jpg)
スライド 11
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img10.jpg)
スライド 12
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img11.jpg)
スライド 13
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img12.jpg)
スライド 14
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img13.jpg)
スライド 15
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img14.jpg)
スライド 16
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img15.jpg)
スライド 17
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img16.jpg)
スライド 18
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img17.jpg)
スライド 19
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img18.jpg)
スライド 20
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img19.jpg)
スライド 21
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img20.jpg)
スライド 22
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img21.jpg)
スライド 23
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img22.jpg)
スライド 24
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img23.jpg)
スライド 25
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img24.jpg)
スライド 26
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img25.jpg)
スライド 27
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img26.jpg)
スライド 28
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img27.jpg)
スライド 29
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img28.jpg)
スライド 30
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img29.jpg)
スライド 31
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img30.jpg)
スライド 32
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img31.jpg)
スライド 33
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img32.jpg)
スライド 34
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img33.jpg)
スライド 35
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img34.jpg)
スライド 36
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img35.jpg)
スライド 37
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img36.jpg)
スライド 38
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img37.jpg)
スライド 39
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img38.jpg)
スライド 40
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img39.jpg)
スライド 41
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img40.jpg)
スライド 42
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img41.jpg)
スライド 43
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img42.jpg)
スライド 44
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img43.jpg)
スライド 45
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img44.jpg)
スライド 46
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img45.jpg)
スライド 47
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img46.jpg)
スライド 48
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img47.jpg)
スライド 49
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img48.jpg)
スライド 50
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img49.jpg)
スライド 51
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img50.jpg)
スライド 52
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img51.jpg)
スライド 53
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img52.jpg)
スライド 54
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img53.jpg)
スライド 55
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img54.jpg)
スライド 56
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img55.jpg)
スライド 57
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img56.jpg)
スライド 58
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img57.jpg)
スライド 59
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img58.jpg)
スライド 60
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img59.jpg)
スライド 61
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img60.jpg)
スライド 62
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img61.jpg)
スライド 63
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img62.jpg)
スライド 64
![](https://i0.wp.com/bigslide.ru/images/51/50965/389/img63.jpg)
スライド 65
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img64.jpg)
スライド 66
![](https://i2.wp.com/bigslide.ru/images/51/50965/389/img65.jpg)
スライド 67
![](https://i1.wp.com/bigslide.ru/images/51/50965/389/img66.jpg)
レッスンのトピック: プログラミング言語「PASCAL」言語のテキストエディター。
IT教師
GBOUスクールNo.293にちなんで名付けられました。 で。 トヴァルドフスキー、モスクワ
バフティノワ ナタリア ヴァレリエヴナ
![](https://i0.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_1.jpg)
レッスンの目的 :
- Pascal 言語に関する最初の情報を生成します。 Pascal 言語のテキスト エディターで作業するスキルを身につける .
![](https://i1.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_2.jpg)
Pascal 言語に関する歴史情報
- パスカル プログラミング言語は、1642 年にフランスの偉大な数学者で物理学者のブレーズ パスカルに敬意を表してその名前が付けられました。 いわゆる「パスカルホイール」という算術演算用の計算機を発明しました。 1968 年末、チューリッヒのスイス連邦工科大学のヴィルト教授とその共同研究者は、Pascal 言語の最初のバージョンを開発しました。 2 年後、コンパイラの最初のバージョンが完成しました。 1971 年に、ヴィルトは自分の言語に関する説明を発表しました。
ブレーズ・パスカル - フランスの数学者、機械学、物理学者、作家、哲学者
![](https://i2.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_3.jpg)
Pascal を作成する際、ヴィルスは次の 2 つの目標を追求しました。
- まず、体系的な学問としてプログラミングを教えるのに適した言語を開発すること。
- 次に、言語の実装は効率的で信頼性が高くなければなりません。
- Pascal 言語の利点の 1 つは、構造化プログラミングの考え方を完全に体現していることです。その本質は、いくつかの構造の助けを借りて、原則として任意のアルゴリズムを表現できることです。
ニクラス・ヴィルト (ドイツ語: Niklaus Wirth、1934 年 2 月 15 日生まれ) はスイスの科学者であり、プログラミング言語開発の分野で最も有名な理論家の 1 人です。 プログラミング言語 Pascal、Modula-2、Oberon の主要な開発者および作成者。
![](https://i0.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_4.jpg)
Pascal言語の開始
Pascal 言語を起動するには、PASCAL.EXE ファイルをロードする必要があります。このファイルは通常、PASCAL ディレクトリにあります。
例: D:\PASCAL\PASCAL.EXE
![](https://i0.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_5.jpg)
![](https://i1.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_6.jpg)
- 青色の背景にプログラムを書いていきます。
- ヒント線は灰色の背景に書かれています。
- 一番上の行にはドロップダウン メニューが含まれています。 Fアイル、 T内線、 で実行、 に編集、 Rモード、 についてトラドカ、 N観察。
- トップメニューに移動するには、F10 キーを押します。 alt キーを押しながら、トップ メニューのいずれかの単語の最初の文字を押すと、ウィンドウが開きます。 (例 alt + B)
![](https://i1.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_7.jpg)
- コンピュータにプログラムを入力することは、コンピュータにテキストを入力することです。 以下に、Turbo Pascal テキスト エディターで最も一般的に使用されるコマンドを示します。
![](https://i0.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_8.jpg)
- PgUp - ページアップ。
- PgDn - ページダウン。
- ホーム - 行の先頭へ。
- End - 行の終わりまで。
- Ctrl-PgUp - テキストの先頭へ。
- Ctrl-PgDn - テキストの最後まで。
![](https://i0.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_9.jpg)
- バックスペース (←) - カーソルの左側の文字を消去します。
- Del - カーソルが指している文字を (カーソルの右側に) 消去します。
- Ctrl-Y - カーソルが置かれている行を消去します。
- Enter - 新しい行を挿入し、古い行を切り取ります。
- Ctrl-Q L - 現在の行を復元します (カーソルが変更された行から離れなかった場合に有効です)。
![](https://i1.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_10.jpg)
- Ctrl-K B - ブロックの先頭をマークします。
- Ctrl-K K - ブロックの終わりをマークします。
- Ctrl-K Y - ブロックを消去します。
- Ctrl-K C - ブロックをコピーします。
- Ctrl-K V - ブロックを移動します。
- Ctrl-K W - ブロックをディスク ファイルに書き込みます。
- Ctrl-K R - ディスク ファイルからブロックを読み取ります。
- Ctrl-K P - ブロックを印刷します。
- Ctrl-K H - ブロック選択を削除します。
![](https://i1.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_11.jpg)
- Pascal プログラミング言語の最初のバージョンが登場したのは何年ですか?
- パスカルの利点は何ですか?
- プログラム内でカーソルを画面の左上隅から右下隅まで素早く移動するには、どのキーを使用すると便利ですか? (逆の場合はどうなりますか?)
- プログラムの一部をコピーするには何をする必要がありますか?
- プログラムテキストに加えた変更を元に戻すことはできますか?
![](https://i2.wp.com/fsd.kopilkaurokov.ru/uploads/user_file_551819deb630a/img_user_file_551819deb630a_12.jpg)
- 1.パスカル
- 2. パスカル パスカルはスイスの科学者ニクラウス・ヴィルトによって開発されました。 Pascal は、構造化プログラミング手法を教えるための最も重要なツールと考えられており、1983 年からコンピューター サイエンスを専門とする学生向けの学校のコースに導入されています。 その後、Pascal 言語は改良され、作者のバージョンとは異なる新しい特性を獲得しました。
- 3. Pascal 言語は比較的習得が簡単で、非常に明確かつ論理的であり、最初に学習するプログラミング言語であるため、適切なスタイルを教えてくれます。
- 4. 自然言語と同様、各プログラミング言語には独自のスタイルとルールがあります。 プログラミング言語の構文は、アルファベット文字から正しいプログラムを構築する方法を決定する一連の規則です。
- 5. パスカル言語のアルファベット 26 のラテン文字と 26 のラテン大文字: a B C D E F G I j k l m n m n m n m n m n m n m n m n m n m n m n o v w x y z a b h i j k l m n m n m n m n m n m n m n m n m n m n m nm v w x y z、強調 _ 10 桁: 0 1 2 3 4 5 6 7 8 9 演算の記号: + - * / = = = = =======================================<> < > <= >= := @ 区切り文字 (区切り文字): . , " () (. .) ( ) (* *).. : ; 指定子: ^ # $
- 6. プログラム構造 (1. プログラムヘッダ) プログラム Program_Name; (2. 使用するモジュールを指定するセクション) List_of_used_Modules を使用します。 (3. 説明セクション) label Label_descriptions; const 定数の説明; タイプ TypeDescriptions; var 変数の説明; プロシージャのプロシージャと機能の説明。 関数エクスポートの説明_of_Exported_Names; (4. ステートメントセクション) ステートメントの開始 ステートメントの終了。
- 7. 簡略化されたプログラム構造 (1. プログラムヘッダ) プログラム Program_Name; (2. 使用するモジュールを指定するセクション) List_of_used_Modules を使用します。 (3. 説明セクション) const Constant_Descriptions; var 変数の説明; (4. ステートメントセクション) begin プログラムステートメントが終了します。
- 8. プログラミング言語のコマンドは演算子と呼ばれます。Pascal の演算子区切り文字は次のとおりです。 (セミコロン)
- 9. コメントは、文字 ( ) で区切られたプログラムテキストの断片です。 プログラム内のコメントは情報提供の機能を果たします。 (私の最初のプログラム)最初のプログラム。 begin writeln('Hello, World!') end。
- 10. 例: 長方形の周囲長プログラム perimetr; (プログラムタイトル) crt を使用します。 (crt – 画面をクリアするために必要) var a,b:integer; (変数の宣言) P:整数; Begin (プログラムの開始) clrscr; (画面クリア) a:=12; (変数 a に値 12 を割り当てます) b:=7; (変数 b に値 7 を代入) P:=2*(a+b); (式の値を P に代入します) write("P = ",P); (P値表示)終了。 (番組終了)
- 11. プログラムは作業中にデータを扱います。 一部のデータはプログラムの実行開始前に設定され、プログラムの実行開始後、その値はプログラムの動作全体を通じて変更されません。 これらは定数です。 他のデータはプログラムの実行中に変更される可能性があります。 それらは変数と呼ばれます。
- 12. 変数と定数の違いは明らかです。プログラムの実行中に、変数の値は変更できますが、定数の値は変更できません。 変数変数定数定数データデータ
- 13. 変数とは、コンピュータがデータを書き込む (「追加」) できるセル (「ボックス」) を意味します。 細胞とは実際には、情報が保存されている「記憶の一部」を意味します。 セルに保存された情報を使用するには、各セルに独自の名前、またはよく言われるように識別子が必要です。 a b 合計 5 3 8
- 14. 識別子。 名前(識別子)は定数、ラベル、型、変数、手続き、関数、モジュール、オブジェクトなど言語の要素です。 識別子は、文字、数字、およびアンダースコアで始まり、スペースを含まない一連の文字です。
- 15. 名前には任意の数の文字を含めることができますが、63 文字が重要です。 PASCAL 言語では、標準の定数、型、手続き、関数、ファイルなどを名称とする機能語や標準名を使用することはできません。 PASCAL 言語名の例: A b12 r1m SIGMA gamma I80_86
- 16. Pascal では、小文字と大文字の違いは無視されるため、NaMe と name は同じです。
- 17. 機能語とは、PASCAL 言語において変更できない特定の意味を持つ単語です。 キーワードと呼ばれることもあります。
- 18. サービス (予約) ワード: ABSOLUTE EXPORTS LIBRARY SET ASSEMBLER EXTERNAL MOD SHL および FAR NAME SHR ARRAY FILE NEAR STRING ASM FOR NEAR THEN ASSEMBler FORWARD NOT TO BIGIN 関数オブジェクト タイプ CASE goto of Unit Const if or until コンストラクター 実装 パックされたデストラクター in PRIVATE VAR DIV インデックス手順 仮想 DO 継承されたプログラム DOWNTO INLINE PUBLIC WITH ELSE INTERFACE RECORD XOR END INTERRUPT REPEAT EXPORT LABEL RESIDENT
- 19. 二重文字または予約語内にスペースを使用することはできません。 スタンダードと呼ばれるものがあります。 sin cos real true 機能語とは異なり、標準名の意味はプログラマによって再定義できます。
- 20. これは、プログラムの変数用にどのくらいのメモリを予約する必要があるかをコンパイラに指示します。 コンパイルされたプログラムでは、メモリ空間がすべての変数に割り当てられ、すべての変数にゼロ値が割り当てられます。 プログラムで使用されるすべての変数は、予約語 var の後の変数説明セクションで宣言する必要があります。 変数の宣言
- 21. データにはさまざまな種類があります...
- 22. データ型 標準型の名前は事前定義された識別子であり、プログラム内のどこでも有効です。 これらは標準のシステム モジュールで説明されており、デフォルトで使用されるモジュールのリストに含まれています。 ユーザー定義型は、ユーザーによって定義される追加の型 (単純および構造化) です。
- 23. 標準データ型 1. 整数型のグループ (Shortint、Integer、Longint、Byte、Word)。 2. 実数型のグループ (Single、Real、Double、Extended、Comp)。 3. 論理型 (ブール型)(Boolean、ByteBool、WordBool、LongBool); 4. 文字(Char); 5.文字列(文字列); 6. インデックス (ポインタ); 7. テキストタイプ(テキスト)。
- 24. 整数型のグループ 型名 型値の範囲 必要なメモリ 符号付き short integer Shortint -128 .. 127 1 byte Signed integer Integer -32768 .. 32767 2 bytes Signed long integer Longint -2147483648 .. 2147483647 4 bytes Unsigned short integer signed Byte 0 ~ 255 1 バイト 符号なし整数 ワード 0 ~ 65535 2 バイト
- 25. 変数 b: バイト; 合計、カウント: 整数; 整数型の変数の宣言 summa:= -365; 使用
- 26. PASCAL 言語の数値は通常、10 進数法で書かれます。 数値の正符号は省略できます。 整数は、小数点のない形式で記述されます。例: 217 -45 8954 +483
- 27. 実数型のグループは、実数のサブセットによって実現されるデータを定義します。 変数 A: 実数。 開始 ... A:=0.65; ...終わり。
- 28. 型名 型 値の範囲 仮数部桁数 サイズ(バイト) 単精度実数 実数 2.9e-39 .. 1.7e+38 11 6 単精度実数 1.5e-45 .. 3.4e+38 7 4 倍精度実数 Double 5.0e-324 .. 1.7e+308 15 8 高精度実数 Extended 3.4e-4932 .. 1.1e+4932 19 10 実数整数 Comp -9.2e+18 .. 9.2e+18 19 8
- 29. 実数は、小数点を含む形式、または文字 E で表される 10 進数の順序を使用した形式で記述されます。 28.6 0.65 -0.018 4.0 5E12 -1.72E9 73.1E-16
- 30. ブールデータ型はブール識別子に対応します。 ブール変数のサイズは 1 バイトで、TRUE または FALSE 値を含めることができます。 値 FALSE は 0 に対応し、0 以外の数値は TRUE とみなされます。 Var ボタン、フラグ: ブール値; 開始ボタン:=true;
- 31. 標準識別子 Char は文字タイプに対応します。 文字型の変数と定数は、さまざまな ASCII 文字から値を取得できます。 Var simvol、bukva、z: char; シンボリック変数の宣言
- 32. 文字列型は標準識別子 String に対応します。 変数 S: 文字列。 (0 ~ 255 文字の文字列) S2: 文字列。 (ストックは5キャラクター)
- 33. 文字列は、一重引用符で囲まれた ASCII 文字セットの一連の文字です。 パスカル言語の行は、アポストロフィの間に書かれた一連の文字です。 アポストロフィそのものを行内で意味のある文字として使用する必要がある場合は、アポストロフィを 2 つ書く必要があります。 文字列の例:「STRING」「STRING」「AD」「YUTANT」
- 文字型は、整数型やブール型と同様に、いわゆる順序型に分類されます。 任意の序数型の有効な値のセットは順序付けされたシーケンスであり、その各要素には独自の序数 (0 から始まる) があります。
- 35. Ord 関数は、型宣言内のこの値の序数を返します。 Ord(2)=2、Ord(‘0’)=48 Writeln(ord(‘e’)); Writeln(ord('9'));
- 36. ASCII エンコーディング テーブル ASCII (American Standard Code for Information Interchange、「アスク」と発音) は、ラテン文字、アラビア数字、いくつかの句読点、および制御文字を表すためのコンピューター エンコーディングです。 これは、米国規格協会 ANSI によって導入されました。
PASCAL プログラミング言語入門 2006 コース構造インターフェイスと基本定義。 プログラム構造。 画面上にテキスト情報を表示する。 キーボードからデータを入力する。 システムモジュールの接続と使用。 基本的なデータ型 (整数、実数、文字列、配列、ファイル) を扱う。 サブルーチン (プロシージャと関数) の使用。 モジュールを使用します。 2 PASCAL 環境インターフェイス Turbo Pascal 7.0 プログラミング言語は、インストルメンタル シェルに組み込まれています。 これには以下が含まれます: マルチウィンドウのテキストエディタ。 プログラムリンカー。 プログラムデバッガ。 ヘルプシステム。 コンパイラ。 3 PASCAL 4 環境インターフェイス 開いているファイルのリスト: Alt + 0 開いているファイルへのクイック アクセス: Alt +<№ окна> 基本定義 予約語は、プログラムの論理領域を区切るためにプログラミング言語によって使用される特別な語です。 演算子は、何らかのアクション (条件のチェック、ループの編成など) を実行する言語コマンドです。識別子は、プログラム要素に対してプログラマが自由に選択した名前です。 データ型は、識別子の特性であり、それが受け取ることができる値のセット (整数または小数、文字列、論理式など) を決定します。 5 一般的なプログラム構造 プログラム Program_name; プラグインの「uses」セクション。 ラベルの説明については「ラベル」セクション。 定数については Const セクションで説明します。 独自のデータ型を説明するための型セクション。 Var 変数の説明セクション。 開始 プログラムの本体。 終わり。 最小コード: 6 SCREEN OUTPUT 画面に情報を表示するには、Write または Writeln 演算子を使用します。 F9 – コンパイル + 検証 Ctrl+F9 – 実行 F9 → Ctrl+F9 – エラーの回避 プログラムの実行結果の表示 7 DISPLAY 演算子の使用結果: WRITE "Empty" 演算子 WRITELN 空行を追加 WRITELN 8 EXERCISE 情報を表示以下のような画面が表示されます こんにちは! 会えてうれしい! コンピューターと呼んでください。 使用した資料: 出力ステートメント: Write、WriteLn 「Empty」WriteLn ステートメント。 空行を挿入します。 9 追加モジュールの接続 追加モジュールは、追加の演算子を導入することでプログラムの機能を拡張します。 モジュールは「Uses」セクションで接続されます。 プログラムマイ; Module1、Module2 を使用します。 ___________________________________ ___________________________________ ________________________ ________________________ MODULE 1 リソースのセット 1 ... MODULE N モジュール: システム独自のリソースのセット N テキスト画面をクリア中 キーが押されるのを待機中 CRT という名前の接続されたモジュール 10 画面の任意の場所に出力 GotoXY (X 、Y: 整数) ここで、X、Y – 画面上のよく知られた場所の座標。 X には 1 ~ 80、Y には 1 ~ 25 の値を指定できます。例: Program My_program; (モジュール接続) Crtを使用します。 開始 (画面クリア) ClrScr; (データ出力) GotoXY(1, 1); write("▒"); GotoXY(80, 1); write("▒"); GotoXY(1, 25); write("▒"); GotoXY(80, 25); write("▒"); (画面遅延) ReadKey; 終わり。 プログラムは、画面の隅に「▒」記号 (コード 177) を表示します。 11 カラーで出力 TextColor (カラー); 文字の色を定義します。 TextBackground(色); 身近な場所の色を定義します。 プログラムマイプログラム; Crt を使用します。 TextColor(赤)を開始します; TextBackGround(青); Write("庭で"); テキストの色(白); Write("草, "); テキストカラー(緑); TextBackGround(黄); Write(「草の上」); TextBackGround(マゼンタ); Write(「薪。 "); 終了。 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 色 ブラック ブルー グリーン シアン レッド マゼンタ ブラウン ライトグレー ダークグレー ライトブルー ライトグリーン ライトシアン ライトレッド ライトマゼンタ イエロー ホワイト 12 – 黒 – ブルー – グリーン – シアン – レッド –ライラック – ブラウン – ライト グレー – ダーク グレー – ブルー – ライト グリーン – ライト シアン – ピンク – ライト ライラック – イエロー – ホワイト データの操作 データの操作 識別子の宣言 14 データ タイプの設定 データの識別 データに対する操作の明確さ タスク値 データ操作 識別子 用語「識別子」は、定数、変数、関数、プロシージャ、コンポーネント、およびその他のユーザー定義オブジェクトに適用されます。 制限事項: 数字で始めることはできません。複数の単語で構成されており、どのキーワードにも一致することはありません。識別子は大文字と小文字が区別されません。 間違った識別子: データ 私の名前 2Array Var ( ( ( (ロシア語の文字が使用されています) スペースがあります ) 数字で始まります ) キーワードに一致します ) 15 データ型 データ型は、値のセットを決定する識別子の特性です。 (整数または小数、文字列、論理式など) を受け取ることができます。 16 INTEGER DATA TYPE 17 可能な値の有限セット type byte shortint word integer longint range 0..255 -128..127 0..65535 -32768..32767 -2147483648..2147483647 ! 範囲を超えるとエラーになります。 size 変数の宣言 変数は、任意の値 (数値、文字列など) を格納し、プログラムの実行中に変更できる識別子です。 構文: 変数<имя переменной> : <тип переменной>; プログラム プログラム名; プラグインの「uses」セクション。 Var 変数の説明セクション。 開始 プログラムの本体。 終わり。 コンピュータのメモリには 3 つの変数用のスペースが確保されています。 18 変数への値の設定 変数の値を設定するには、代入演算子:= を使用する必要があります。 記録構文:<Переменная> := <Значение>; 値 3 は、A という名前の変数 (整数) に入力されます。 19 整数変数を使用した演算 20 算術演算: + - * / 標準演算: div | モッド | sqr 整数型では使用できません S という名前の変数には、変数 X と Y に格納された値の合計が格納されます S という名前の変数に格納された値が画面に表示されます 演習 21 1. 結果を表示するプログラムを作成します2. x=11、y=3 のときの関数 f 2 x 3 y の値を表示するプログラムを作成します。 使用する材料: 変数は Var セクションで宣言されます。 整数型は Integer と呼ばれます。変数に値を割り当てるための構文は次のとおりです。<Переменная> := <Значение> ; 各演算子の後に記号があります。 (begin と last end を除く) REAL DATA TYPE 値のセット √ √ 順序型 実数型 一方向互換性: Real Integer Integer Real! 範囲を超え、互換性ルールに準拠していない場合は、エラーが発生します。 22 実変数を使用した演算 23 標準演算: pi | 平方メートル | 罪 | コス | 腹筋 | 経験 | Ln ラウンド | Trunc (実数 → 整数) 例 (X, S – 実数型): X:= pi/3; S:= Sin(X) * 100; Write(ラウンド(S)); S という名前の変数には、変数 X と Y に格納されている値の比率が含まれています。数値の位置と数値の小数部分の文字数 E - は、数値のべき乗を示します。 5.6E-5 = 5.6・10-5 文字列データ型 24 文字列 - 順序付けられた文字セット。 行はアポストロフィで囲まれます。 文字列は、整数型および実数型と互換性がありません。 タイプ範囲 文字列 255 文字 (文字列の基本演算子) + (連結) 長さ(S); (文字列の長さ) 例: X:= 'Vasya'; Write('あなたの名前で', 長さ(X), 'lit.'); S:=X; X:= S; 演習 数値 12.89 と 0.22 を除算した結果を、小数点以下の有効数字 3 桁だけを表示して、次の形式で表示するプログラムを作成します。 最初の数値を 2 番目の数値で除算 = 結果 Write (X:1:3, ' razdelit na ', y:1 :3, ' = ' z:1:3) 使用される材料: 文字列型は String と呼ばれます 文字列はオポストロフィで囲まれます 文字列の連結は + 記号によって行われます 表示演算子では、異なる型はカンマで区切られます25 キーボードからのデータ入力 26 キーボードから情報を入力するには、入力演算子 Read または ReadLn を使用する必要があります。 構文: Read (N1, N2, ... Nn); ここで、N1、N2、...Nn は変数 (整数、実数、文字列) です。キーボードから入力された値は、変数 X に入力されます。値を入力した後、Enter キーを押す必要があります。 Enter 演習 27 1. キーボードから入力された 2 つの数値の合計を計算するミニ電卓プログラムを作成します。 2. あなたの名前を尋ねるプログラムを作成し、名前を書いた後に挨拶を表示します。 たとえば、Vanya という名前を入力すると、プログラムは「こんにちは、Vanya!!!」というフレーズを表示します。 使用される材料: 入力演算子: Read、ReadLn 演算子 条件演算子 29 条件演算子は「分岐」を実装します。つまり、条件の真偽に応じて演算子の実行順序を変更します。 条件を確認しています いいえ アクション 1 ビーチに行きます 雨が降っています はい アクション 2 傘を持っていきます アクション 3 映画館に行きます 条件を確認しています 比較演算: > - 詳細< - меньше = - равно >= - 以上<= - меньше или равно <>- 30 に等しくない 論理演算: Not And Or - Not -And - Or 例: 私の身長 > Petya の身長の場合、私の身長は Petya よりも高いです (雨が降っている) または (雪が降っている) 場合、私は家にいてください If Not ((雨が降っている ) And (風))、その後、散歩に行きます 論理演算を使用する場合、条件は括弧で囲まれます 条件演算子の構文 短い形式: If<условие>それから<оператор>; たとえば、変数 X の値が 0 より小さい場合、値 1 が同じ変数に書き込まれます。<0 Then X:= 1; Полная форма: If <условие>それから<оператор_1>それ以外<оператор_2>; 例: If X>5 then X:= X - 1 Else X:= X + 1; Then と Else という単語の後、Else という単語の前に使用できる演算子は 1 つだけです。 不足しています 31 演習 32 1. ドルでの金額とユーロでの金額を入力として受け取り、どちらの通貨で金額が大きいかを表示するプログラムを作成します (1 ドル = 28 ルーブル、1 ユーロ = 35 ルーブル)。 Program は 3 つの数値を入力として受け取り、それらの最大値を表示します。 使用される資料: 条件演算子の記録形式: If<условие>それから<оператор>; もし<условие>それから<оператор_1>それ以外<оператор_2>; Else 記号の前。 含まれない比較演算: >< = <> >= <= Логические операции: Not Or And ОПЕРАТОРНЫЕ СКОБКИ Если после слов Then или Else необходимо записать несколько операторов, то их заключают в операторные скобки (составной оператор). Операторные скобки начинаются словом Begin, а заканчиваются словом End; Например: If Z >0 次に X を開始します:= 1; Y:= -1; WriteLn('情報を受け付けました'); End Else WriteLn('エラー'); 33 選択演算子の場合 選択演算子は、ネストされた条件文の構成を置換するために使用されます。 大文字と小文字の構文<порядковая_переменная>の<значение_1> : <оператор_1> ; <значение_2> : <оператор_2> ; ……… <значение_N> : <оператор_N>それ以外<оператор_N+1>; 終わり; 選択ステートメントでは演算子括弧を使用できます。 オプション行 34 SELECTION OPERATOR CASE Case 学生の身長 16..30: あなたは小学生です。 31、32、33: あなたは 5 年生か 6 年生です。 34..50: あなたは高校生です。カンマは値のリストに使用され、コロンは範囲の選択に使用されます。それ以外の場合、あなたは明らかに学生ではありません。 終わり; -128..-1 のケース x: writeln(‘Negative’); 0: writeln('ゼロ'); 1..127: writeln('正') Else WriteLn('範囲外'); 終わり; 35 演習 数値を指定して、対応する曜日を表示するプログラムを作成してください。 たとえば、数値 2 を入力した場合、プログラムは「火曜日」を出力するはずです。 数値が 1..7 を超える場合は、そのような日は存在しないというメッセージが表示されます。 使用素材:選択演算子:ケース<порядковая_переменная>の<значение_1> : <оператор_1> ; ……… <значение_N> : <оператор_N>; それ以外<оператор_N+1>; 終わり; 36 サイクル 37 循環アルゴリズムは、同じ変更されたデータを使用して特定の演算子が繰り返し実行されるアルゴリズムです (たとえば、加算を繰り返して数値を乗算する手順)。 Pascal 言語には 3 つのループ演算子があります。 For (パラメータ付きのループ、または指定された繰り返し回数のループ) While (ループ BYE) 繰り返し (ループ TO) 繰り返しの回数がわかっている場合は、ループを使用することをお勧めします。パラメータを持つ演算子。 LOOP WITH PARAMETER 38 パラメータの値を増減させて、指定した回数だけループします。 For (パラメータ) := (開始値) To (終了値) Do (演算子) ; ループ本体 注 パラメータ – 整数型。 ループ内で括弧を使用できます。 ループ本体のループ パラメーターを変更することはできません。 ループパラメータが 1 つ増加します。 初期値 > 最終値、それ以外の場合、ループ本体は無視されます。 パラメータを減らすには、To の代わりに DownTo を使用します。 LOOP WITH PARAMETER 39 整数 (a、b)、および a を要求するプログラムを作成します。 := <нач_зн>に<кон_зн>する<оператор>; パラメータ – 整数型 (通常は整数)。 ループ内で括弧を使用できます。 ループ パラメータは 1 つずつ増加します。 40 WHILE LOOP While ループは最初に条件をチェックし、それが真の場合にのみループの本体を実行します。 While (条件) do (演算子); 以下に記述されたコード本体では、ループは 1 回も実行されません。 x>1 の場合は x:=x-1 を実行します。 無限ループが発生する可能性があります。 例: x:=1 x>0 の場合、x:=x+1 を実行します。 41 WHILE LOOP (“WHILE”) a から b までの数値の合計を表示するプログラム。 キーが押されていない間は、Delay(2000) を開始します。 終わり; このサイクルは、変化する変数 f が値 b より大きくなるまで機能します。 42 練習問題 43 1. 宇宙飛行士は月に白樺を植えることを決定し、最初の年は毎年 3 本の白樺の数を 2 倍に増やしました。 何年後には白樺の木の数が 10,000 本を超えるかを画面に表示します。 2. キーボードから入力された数値の最大値を決定するプログラムを作成します (入力された数値は数値 0 で終わります)。 以下は推奨される画面ビューです: 数字を入力してください。 入力を完了するには、0 を入力してください。 89 15 0 最大数は 89 です。 使用した内容: While ループ ステートメント: While<условие>する<оператор>; While ループは最初に条件をチェックし、それが true の場合にのみループの本体を実行します。 REPEAT LOOP 44 繰り返しループは、最初にループの本体を実行し、その後で条件をチェックします。 繰り返しループでは複合演算子を使用する必要はありません。 この構造には、Repeat と until という単語で囲まれた 1 つではなく、複数の演算子の実行が含まれます。 REPEAT LOOP a から b までの数値の合計を表示するプログラム。 ループは、変化する変数 f が値 b より大きくなるまで実行されます。 45 While 反復のサイクルの比較 46 ループ モデルの選択は、特定の状況での使用の利便性にのみ依存します。 ほとんどの場合、1 つのタイプのサイクルの代わりに別のサイクルを使用できます。 演習 関数 y x 3 x 2 16 x 43 の値を、-4 から 4 までの範囲で 0.5 ずつ変化させて計算します。 使用素材:Repeatループオペレーター:Repeat<тело_цикла>それまで<условие>繰り返しループは最初にループの本体を実行し、その後で条件をチェックします。 47 サイクルの中断 48 循環演算子の柔軟な制御のために、次の手順が使用されます。 続行 - サイクルの次のパスの完了。 例: 1 から i までの数値の合計が 100 を超える最小の数値 i を見つけます。 s (1 から i までの数値の合計) が 100 を超えるとすぐに、break ステートメントがトリガーされ、ループが終了します。出ました。 s:=0; for I:= 1 to 100 は、s>100 の場合に開始され、その後中断されます。 s:= s + i; 終わり; Writeln('(1+2+..+i)>100 が等しいような最小数 i ',i); キーボードから 10 個の数値を入力し、ループ内で正の値のみの合計が計算されます。 数値が負の場合は、Continue ステートメントが実行され、ループの次のパスが開始されます。 s:=0; for I:= 1 ~ 10 do begin Readln(k); もしkなら<0 then Сontinue; s:= s + k; end; Writeln (‘Сумма положительных чисел равна ’,s); МАССИВЫ МАССИВЫ 50 Простые типы: одна переменная – одно значение Структурированные типы: одна переменная – несколько значений Массив – это фиксированное количество значений одного типа. Доступ к конкретному значению осуществляется через индекс. Переменная массива Структура массива: A= Доступ к массиву: 0 1 2 3 Индекс 9 7 0 0 Значения <Имя массива> [ <Индекс>] A := 7; 配列 配列は Var セクションで宣言されます。 (Name) : Array [ (start_value) .. (end_value) ] of (type) ; 配列宣言の例: Var A: 文字列の配列。 B: 実数の配列。 C: 整数の配列。 配列に値を入力する例: A:=‘Vasya’; A:=「ペチャ」; A:=「マーシャ」; A:=「オレシア」; 書き込み(A); f:=1 ~ 10 の場合、 C[f] := f*2; を実行します。 f:=1 ~ 10 の場合、WriteLn (C[f]); を実行します。 51 演習 52 ユーザーに 7 つの整数を要求し、それらを配列に格納するプログラムを作成します。 最大の要素が配列内で検出され、画面に表示されます。 例: 1 番目の数値を入力: 4 2 番目の数値を入力: 8 3 番目の数値を入力: 9 4 番目の数値を入力: 2 5 番目の数値を入力: 4 6 番目の数値を入力: 5 7 番目の数値を入力: 0 最大数値: 9 使用するマテリアル: 配列宣言:<Имя>:配列[<нач_зн> … <кон_зн>] の<тип>; 配列アクセス:<Имя массива> [ <Индекс>] 乱数ジェネレーター (RNG) プログラムで乱数を生成するには、次の演算子を使用します。 Randomize – RNG 初期化。 プログラムの最初にのみ発表されます。 Random – 0 から 1 (実数型) までの乱数を生成します。 ランダム (N) – 0 から N-1 までの乱数を生成します (整数型)。 53 多次元配列 54 各配列次元の間隔のリスト (名前): Array [ (start_value) .. (end_value) , (start_value) .. (end_value) , (etc) ] of (type) ; 4 行 6 列の 2 次元配列 (行列、テーブル) を宣言する例: Var A: Array of Integer; 配列を埋める例: For i:=1 to 4 do For j:=1 to 6 do A := i+j; Ai , j 2 3 4 5 3 4 5 6 4 5 6 7 5 6 7 8 6 7 8 9 7 8 9 10 演習 2 次元配列に -10 から 20 までの乱数を入力し、その合計を表示するプログラムを作成してください。テーブルの斜めに配置された要素の数。 使用したマテリアル: RNG 初期化: Randomize 0 から N-1 までの乱数: ランダム (N) 55 ファイルの操作 ファイルの操作 57 ファイル: ファイルの先頭 Index)a@$ku⌂|"Hd9v*9(L*M= БYGRMxduВ █ 8e*ВOtCDrTVzHGJ1aBD>@Б\(r8sE) █ :wcJvAmRa"v/.Wai;$`SWI=y2]suB █ ?Hq>vF(LmBcV^Adz4P4.6b]o(QkВ8 █ cu<6`8Z":M^1;:8ANwak;,b2-4…u5 █ 2]suB?Hq>vF(LmBcAdz4wcP]o(QkВ █ 8c8df]e"v,su>+),VAEFБjFV,W$Q- █ y0G1GjN$-eБ|sqZ0`QnВ%\БD%y █ █ █ - ラインターミネータ █ - ターミネータファイル 変数ファイルの作成、読み取り、書き込み、終了 ファイルを操作するときの一連の操作: 1. ファイル変数 (FP) の宣言 2. FP とファイルの関連付け 3. 読み取り/書き込み用にファイルを開きます。 ; ファイルを閉じる (ファイルと FP 間の接続も切断されます)。<Имя>:ファイル<тип> ; <Имя>:文章; 変数 f:テキスト; h: 整数のファイル。 2. FP と割り当てファイルの関連付け (<ФП>, <имя файла>); Assign (f, ‘c:\my\Data.ghm’) 58 ファイルの操作 3. 読み取り/書き込みのためにファイルを開く Reset (<ФП>); - 読み取り用にファイルを開きます Rewrite (<ФП>); - 書き込み用にファイルを開きます。 4. ファイル操作 読み取り (<ФП>, <П1> , <П2>、…); - 変数に読み込みます<П1>, <П2>等 ポインターの位置から一度に 1 要素ずつ移動します。 書く(<ФП> , <П1> , <П2>、…); - 変数値をファイルに書き込みます<П1>, <П2>等 ポインタの位置から一度に 1 要素ずつ移動します。 エオルン (<ФП>); - 行末に到達すると True を返します。 EoF (<ФП>); - ファイルの終わりに達した場合は True を返します。 5. ファイルを閉じる Close (<ФП>); 59 ファイルの操作 行列のサイズが 5x5 であることがわかっている場合は、プログラムを簡略化します (For ループを使用します) 60 演習 61 プログラム「HOUSE-3」を作成します。 最初のファイルには、主格の参加者の名前が含まれています。 2番目では、同じ名前ですが対格です。 3 番目には、感情または何らかの行動の表現 (好き、嫌い、キス、噛みたい、崇拝、尊敬、嫌い、会いたい、ハグ) のリストが含まれています。 プログラムはこれらのファイルから情報をランダムに取得し、次の原則に従って新しいファイルを作成する必要があります。<имя в им. пад> <чувство/действие> <имя в вин. пад> オルガはセルゲイを愛している オレグはローマンを見たい カティアはナスティアを尊敬している などなど。 使用される資料: オペレーター名: Assign、Rewrite、Reset、Write、Read、Close。 グラフィック Pascal でグラフィックを操作するには、graph.tpu モジュールと egavga.bgi グラフィック アダプター ドライバーという 2 つのファイルが必要です。 1 つ目は \UNITS ディレクトリにあり、2 つ目は \BGI ディレクトリにあります。 ! ドライバー egavga.bgi。 exeファイルを扱う場合に必要です。 描画するには、次の操作を行う必要があります。 1. GRAPH モジュールを接続します (「Uses」セクション内)。 2. グラフィックスを初期化します (InitGraph)。 3. 何かを描きます。 4. グラフィックモードを閉じる(CloseGraph) 63 GRAPHICS グラフィックモードの初期化 線を描きます。 羽根は点 (0,0) から点 (639, 479) に移動します。 プログラム入門_1; グラフ、crt を使用します。 Var Gd,Gm: 整数; 開始 Gd:=0; InitGraph (Gd,Gm,'d:\BP\bgi"); Line (0,0,639,479); ReadKey; CloseGraph; END. 639 px. 座標系 479 px. 64 グラフィックス モードを閉じる 演習 65 1. 長方形を描画します。画面の中心に三角形を置きます。 2. 画面の中央に、画面の対応する辺の半分のサイズの辺を持つ長方形を描きます。 使用するマテリアル: グラフィックス モジュール: Graph グラフィックスの初期化: InitGraph グラフィックス モードを閉じる: CloseGraph + COLOR SetColor(Color : word); ペンの色を設定します。 GetColor: word; ペンの色を返します。 SetBkColor(color: word); 背景色を設定します。 – グリーン – シアン – レッド – ライラック – ブラウン – ライト グレー – ダーク グレー – ブルー – ライト グリーン – ライト シアン – ピンク – ライト ライラック – イエロー – ホワイト グラフィック プリミティブ ライン座標 (x,y)。 MoveTo(x, y); ペンを座標 (x,y) に設定します。 PutPixel(x, y, Color); Color で座標 (x,y) の点を描画します。 GetPixel(x, y): ワード; 座標 (x,y) の点の色を返します。 長方形(x1, y1, x2, y2); 長方形の輪郭を作成します。 円(x, y, r); 中心が (x,y)、半径が r の円を描きます。 SetLineStyle (Ln, 0, T) アウトラインのパラメータを変更します。 Ln - 線のスタイル (0..3): 67 x1、y1 T - 線の太さ: 1 = 通常。 3 = 厚い。 FillEllipse(x, y, Xr, Yr); (x,y) を中心とし、半径 Xr および Yr を持つ塗りつぶされた楕円を描画します。 SetFillStyle(タイプ, カラー); 閉じた ClearDevice 図形のハッチングのタイプ (0..11) と色を設定します。 グラフィック画面を現在の背景色 x2、y2 でペイントしてクリアします。 グラフィック プリミティブ 68 演習 69 1. モニター画面に家を描くプログラムを作成します。 2. ランダムな半径 (1 ~ 5 ピクセル) とランダムな位置の星でモニター画面に星空を描画するプログラムを作成します。 色もランダムです (白、ライトグレー、ダークグレー)。 使用素材: SetColor(Color: word); - 描画色を設定します SetBkColor (color: word); - 現在の背景色を設定します。 ライン(x, y); - 現在のペン座標から (x,y) 座標まで線を描きます。 MoveTo(x, y); - ペンを座標 (x,y) に設定します。 PutPixel(x, y, Color); - Color で座標 (x,y) の点を描画します。 長方形(x1, y1, x2, y2); - 現在の色の線から長方形の輪郭を構築します。 円(x, y, r); - 中心が (x,y)、半径が r の円を描きます。 FillEllipse(x, y, Xr, Yr); - (x,y) を中心とし、半径 Xr および Yr を持つ塗りつぶされた楕円を描画します。 グラフィック + アニメーション ミリ秒単位で一時停止します。 70 サブルーチン サブルーチンを使用すると、コードの繰り返し部分を個別のフラグメントに分離し、プログラム内の適切な場所に挿入できます。 プロシージャとは異なり、関数は呼び出しの結果を返します。 プロシージャ 関数 サブルーチン: Begin End キーワードの間に記述されます。 識別子を指定するための規則に従って記述された名前によって識別されます。 入力パラメータと出力パラメータがある場合があります。 メインプログラムの構造を完全に繰り返します。 72 プログラムマイ; サブルーチン 1 [サブルーチン 1 のコード] サブルーチン 2 [サブルーチン 2 のコード] Begin サブルーチン 2 サブルーチン 1 システムサブルーチンの例: Write(“Ok”); ClrScr; 長さ (S); ランダム; // // // // パラメータが 1 つあるプロシージャ パラメータが無いプロシージャ パラメータが 1 つある関数 パラメータが無い関数 サブルーチン 2 終了。 サブルーチン (SPR) サブルーチンのネスト プログラム サブルーチン 1 サブルーチン 3 サブルーチン 4 サブルーチン 2 73 変数利用可能領域 特定の SPR に記述された変数は、ネストされたすべての SPR を含め、その本体内で既知です (SPR1 に記述された変数は SPR3、4 で利用可能になります) 。 PPR に記述されている変数の名前は、他の PPR の変数の名前と一致する場合があります (同じ変数を各 PPR で宣言できます)。 PPR に記述されている変数名は、これを囲む PPR からの同じ名前の変数を選別します (同じ変数が PPR1 と PPR3 で宣言されている場合、各 PPR でこれらの変数は一意になります)。 プログラム変数はグローバル、サブルーチン変数はローカルと呼ばれます。 パラメータのないプロシージャ 記録構文: Procedure (プロシージャ名); (変数、定数、型、ラベル、モジュールのセクション) Begin (プロシージャ本体); 終わり; パラメーターなしでプロシージャを使用する例: 74 PROCEDURES WITHOUT PARAMETERS 同じ名前の変数をエスケープする例: Program My_program; Crt を使用します。 変数A:文字列; // プロシージャの説明 Procedure My_Procedure; 変数A:文字列; 開始 A:= "サブルーチン"; Writeln(A); 終わり; 開始 A:= "本体"; Writeln(A); 私の手順; Writeln(A); 終わり。 // プロシージャの呼び出し 75 パラメータ付きプロシージャ 76 サブルーチンをより汎用的にするために、プログラムとそのサブルーチン間のデータ交換に特別なメカニズムが使用されます。 パラメータを含むシステム プロシージャ: SetColor (Red); ( Rectangle (0, 0, 639, 479) のプロシージャ; ( InitGraph (Gd,Gm,'d:\BP\bgi") のプロシージャ; ( ( パラメータ 1 つのパラメータ ) 複数のパラメータ ) いくつかの異なるタイプのプロシージャ ) )パラメーターを含む構文プロシージャ Procedure (名前) ((入力変数の領域) Var (出力変数の領域 (各変数には独自の Var))); 領域の構造: Variable_1、Variable_2、...: Type 。 ....................... Variable_N-1, Variable_N, … : Type; いずれかの領域が欠落している可能性があります パラメータを使用した手順 入力パラメータの使用 長方形を描画する手順画面の境界線、指定された色 パラメータなし パラメータあり プロシージャ SetColor(i)(0, 0, 639, 479);プログラム内でプロシージャを呼び出す: i:=6; Cir(6, 12); 77 パラメータを使用したプロシージャ 出力パラメータの使用 度単位ラジアンから角度を変換する手順 プログラムEX_26_3; VAR x,a: 実数。 手順 Rad(alfa: 実数; var betta: 実数); (出力変数) BEGIN Betta:= pi*alfa/180; 終わり; BEGIN Write("角度を度単位で入力してください: "); Readln(x); Rad(x, a); (プロシージャ呼び出し) Writeln("ラジアン単位の角度に等しい = ",a:6:4); 終わり。 78 練習問題 79 1. 三角形を描く手順を以下の形式で書きます。 Triangle(x1,y1, x2,y2, x3,y3, Color) 2. 長方形の面積を計算する手順を以下のように書きます形式: SRect (a, b, S) ここで、S はプロシージャの出力パラメータです。 使用したマテリアル: プロシージャ (名前) ((入力変数領域) Var (出力変数領域)); 領域構造: 変数_1、変数_2、...: タイプ; ................... 変数_N-1、変数_N、…: タイプ; 関数 80 関数を記述するための構文 Function ((入力変数領域) Var (出力変数領域)): (型) ; プロシージャのフォーマット 関数のフォーマット プロシージャ S(a,b:real; var s:real); s:= a+b を開始します。 終わり; 関数 Sum (a,b: 実数): 実数; 合計の開始:= a+b; 終わり; プロシージャの呼び出し 関数の呼び出し S(10, 20, A); 書き込み(A); A:= S(10, 20); WriteLN(A); WriteLN(S(20, 30)); 特定のサブルーチンは、その操作の結果が期待される場合にのみ関数として設計することをお勧めします。 サブルーチンが特定の一連のアクション (表示、描画など) の実行のみに焦点を当てている場合は、プロシージャとして設計する方が適切です。 演習 長方形の面積を計算する関数を次の形式で記述します。 SRect (a, b) 使用する材料: Function (名前) ((入力変数の面積) Var (出力変数の面積)): (型) ; 領域構造: 変数_1、変数_2、...: タイプ; ................... 変数_N-1、変数_N、…: タイプ; 81 モジュール モジュール 83 モジュール (UNIT) は独立したプログラム単位であり、そのリソース (プロシージャと関数) は他のプログラムから使用できます。 プログラムMy1; Module1、Module2 を使用します。 __________________________ _____________________________________ _____________________________________ ________________________________ モジュール 1 リソース セット 1 … プログラム My2; Module1、Module2 を使用します。 __________________________ __________________________ __________________________ __________________ MODULE N リソースのセット N モジュールは、USES MODULES セクションを通じてプログラムに接続されます。 構造 84 モジュールは次の部分で構成されます。 1. モジュールヘッダー。 2.インターフェース部分。 (可視オブジェクトの説明) 3. 実装部分。 (隠しオブジェクトの説明) 4. 初期化部分 (オプション)。 ユニット (モジュール名); インターフェイス (グローバル変数、定数、型のセクション) (モジュール) (手続きと関数のヘッダーのリスト) 実装 (ローカル変数、定数、型のセクション) (手続きと関数の実装) 開始 (初期化部分) 終了。 ! モジュールヘッダー名はモジュールファイル名と一致する必要があります。 モジュール モジュール例: Unit My_Unit; インターフェイス変数 ms: 実数の配列。 ( グローバル配列 ) 関数 Cub(x:integer):Integer; (関数 Cub = x^3 ) 関数 ext4(x:integer):Integer; ( Function ext4 = x^4 ) 実装関数 Cub(x:integer):Integer; (Cub 関数の実装) Begin Cub:= x*x*x; 終わり; 関数 Ext4(x:integer):Integer; ( ext4 関数の実装) Begin Ext4:= x*x*x*x; 終わり; 終わり。 85 演習 86 1 つの関数と 1 つのプロシージャを含むモジュールを作成します。 ( 関数計算 X1=1/x ) X1(a:real):real; ( 単語 S を画面上の X, Y の位置に出力する手順 WriteXY(S:String; X,Y:Iteger); 使用する材料 (モジュール構造): ユニット (モジュール名); インターフェイス (グローバル変数、定数のセクション) 、タイプ)(モジュール)(手続きと関数のヘッダーのリスト)実装(ローカル変数、定数、型のセクション)(手続きと関数の実装)開始(初期化部分)終了。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img1.jpg)
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img2.jpg)
パスカル言語は 1971 年に開発され、機械式コンピューターを発明したフランスの科学者ブレーズ パスカルにちなんで命名されました。
パスカル さまざまな情報処理の問題を解決できる汎用プログラミング言語です。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img3.jpg)
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img4.jpg)
言語のアルファベット
すべてのラテン文字の大文字と小文字 (A ~ Z、a ~ z)。
アラビア数字 (0 ~ 9);
記号 +、-、*、/、…。
機能的な言葉。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img5.jpg)
F1 – ヘルプまたはヘルプ デスク (ヘルプ)。
F2 – 編集したテキストをディスク ファイルに書き込みます ( 保存) .
F5 – アクティブなウィンドウを全画面で開きます。
F6 – 次のウィンドウをアクティブにします。
F9 – プログラムをコンパイルしますが、実行はしません。
F10 – メインメニューに移動します。
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img6.jpg)
基本的なファンクションキー
Alt-X – ソフトウェア環境を終了します。
Ctrl-F9 – プログラムの実行: エディターにあるプログラムをコンパイルし、RAM にロードして実行します。
Alt-F5 – エディタウィンドウをプログラムの結果を出力するウィンドウに変更します。
タブ – ウィンドウ要素間の切り替え。
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img7.jpg)
メインメニューからモード選択状態から編集状態に移行するには、 キーを押す必要があります。 ESC .
プログラムテキストを作成するには、「通常の入力」と同様に、キーボードを使用してこのテキストを入力する必要があります。 次の行を入力したら、 キーを押します。 入力 , カーソルを次の行に移動します。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img8.jpg)
プログラム構成
プログラムは 3 つの主要な部分で構成されます。
番組タイトル。
説明セクション (契約)。
実行可能部分 (オペレーター)。
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img9.jpg)
機能語
プログラム ;
ラベル ;
定数 ;
タイプ ;
手順 ,
関数
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img10.jpg)
Pascal プログラムには次の「句読点」が含まれています。
- セミコロン;
- ドット。
セミコロン演算子を互いに分離する。 ドットプログラムの最後に置かれます。
サービスワード BEGIN および END はセミコロンで演算子と区切られていません。
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img11.jpg)
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img12.jpg)
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img13.jpg)
変数はプログラムの実行中に変更される可能性のある値です。
特定の型の変数または定数を宣言すると、その値が格納されるメモリ内の場所が割り当てられます。
型によって、変数のメモリのサイズと構造が決まります。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img14.jpg)
データ型は以下を定義します。
- メモリ内のデータを表す形式。
- 有効な値のセット。
- 有効な操作のセット。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img15.jpg)
変数の説明
変数の説明は、サービスワード VAR (「変数」と訳されます) で始まります。
VAR の後に、プログラム内で見つかったすべての変数の名前が書かれ、各変数が受け入れる権利を持つ値のタイプをコロンで区切って示します。
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img16.jpg)
単純
構造化された
参照
手続き的
物体
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img17.jpg)
単純
種類
序数
本物
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img18.jpg)
単純
順序型
整数型
ブール型
文字の種類
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img19.jpg)
整数型
可能な値の範囲
2147483648... 2147483647
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img20.jpg)
例えば:
a、f、m、n: 整数。
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img21.jpg)
実数型
範囲
2.9*10 -39 ... 1.7*10 38
5.0*10 -45 ... 3.4*10 38
5.0*10 -324 ... 1.7*10 308
3.4*10 -4932 ... 1.1*10 4932
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img22.jpg)
例えば:
a、f、m、n: 実数。
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img23.jpg)
ブール型
ブール データ型は、パラメーター (変数) が True と False の 2 つの値を取ることができるデータ型を表します。
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img24.jpg)
例えば:
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img25.jpg)
文字の種類
記号値とは、キーボードに表示されないものも含め、多くの ASCII コードに含まれる値を意味します。
このタイプの値は、a = ‘d’、r= ‘g’ のようにアポストロフィで書かれます。
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img26.jpg)
列挙型
この型は、パラメータ (変数) の値が一致する一連の識別子によって定義されます。 識別子のリストは括弧内に示され、カンマで区切られます。 型宣言は宣言セクションで行う必要があり、その前にコードワードを置く必要があります。 タイプ .
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img27.jpg)
例えば:
カラー=(黒、白、青、緑、赤)
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img28.jpg)
![](https://i1.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img29.jpg)
算術演算
追加
引き算
乗算
実数除算
整数の除算
整数を割ったときの余りを求める
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img30.jpg)
入力演算子
- 読む;
読み取り (変数名)、
例えば:
(a、b、c) を読み取ります。
この演算子を使用すると、変数値を入力した後、カーソルは同じ期間に留まります。
![](https://i2.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img31.jpg)
入力演算子
- リードリン
Readln (変数名)、
例えば:
Readln (a、b、c)
この演算子を使用すると、データを入力した後、カーソルが新しい行に移動します。
![](https://i0.wp.com/fhd.multiurok.ru/c/f/6/cf6fb383a585a2eabd4de8e47a876daeafee9f18/img32.jpg)
推論演算子
書き込み (「テキスト」、変数名: m、n)
Writeln(‘テキスト’, 変数名: m, n)
例えば:
書き込み (' 合計, C= ', c)
変数値の順次出力。
Writeln 演算子を使用すると、新しい行が入力されます。