コンピュータープログラミング

プログラミング。 オプションを指定したサイクル数

ターボパスカル中で特別な場所のサイクルを取ります。 彼らは、画面に技能訓練の入出力情報の直後に勉強を始めます。 結局のところ、ほとんどのタスクは、パラメータおよび他の構造とのサイクルは、特定のプログラムブロックの書き込みや操作を容易に支援することを確認することです。

品種サイクル

合計では、3種類があります。

  • パラメータを指定して、
  • 前提条件と、
  • 事後条件。

オプション付きサイクル、それ以外やる...のために...にと呼ばれるかについては...とdownto .... 、繰り返し一連のアクションを繰り返してください。 原理的には、他の品種のみforループに予めステップ数を知られているが、同じ目的のために使用されます。

2つの他の構造(繰り返しますが)最初は未知の反復回数で。 ジョブを研究するときしたがって、サイクルが使用され、理解されなければなりません。

基本的な定義関連

パラメータを持つサイクル - 繰り返し反復。 カウンタ - 所定の設計を使用して実行される主成分。 ギャップの境界が行われるどの程度か、その反復を示します。 ところで、初期値は、ユーザが自分の境界ギャップの両方を設定1に等しいことは必要ではありません。 ループ本体 - すでに繰り返しの回数を決定したコマンドのセット。

用語「パラメータを持つサイクルは、」条件がチェックされていることを意味し、デザインの反復の後、セット。 カウンタは増加(または減少)、およびすべてが繰り返されています。 ループ本体は、条件が真である限り関与することになります。

やる...と...の場合:アルゴリズム、構文

既に述べたように、パラメータを使用してサイクルで動作するには、「ギャップ」を指定するアプリケーションで使用されています。 したがって、それは数字の配列、曜日、行mを詩であることができる。D.

2孤立フォームデザイン:カウンタの増加とその減少。 最初の設計は、次のように綴られます。

iskh.peremennaya ボーダー2 = 1つのボーダーが行います

始めます

ループ本体;

エンド;

ここでは:ref。 変数は、プログラムやユニットの先頭でユーザが宣言されます1つの境界と2の境界 -時間の初期値と最終値。 ループ 本体内のプログラムによって実行されるアクションの数を規定しています。 ループ本体が一つだけのチームが含まれている場合は、オペレータのブラケットが始まることを...終わりを省略することができます忘れてはなりません。 この実施形態では、カウンタは、すなわちは1ずつ増加します。

ボーダー ボーダー2とdownto iskh.peremennaya = 1のために行います

始めます

ループ本体;

エンド;

ここrefを。 変数が1単位で減少します。

以下のように... DO FOR ...サイクルパラメータのスキームは次のようになります。

  • それは、T。E. 2境界 、間隔の上限値を設定します
  • Iskh.peremennoyは 1の限界を割り当てます
  • 条件付きテストは合格:iskh.peremennaya≤2の境界を。
  • 結果を受信した場合に (TRUE)ループ本体が実行されます。
  • カウンタが1に等しいステップだけインクリメントされます。
  • iskh.peremennaya> 2境界 :条件が真であると3-5は、このような時間までスムーズに行く、アイテム これが発生すると、ループは終了し、制御は、所与の設計の次の命令に渡されます。

以下のために...とdownto ...アルゴリズムを行い、いくつかの点を除き、上記のようになります。

  • 第三段階で条件がテストされます。iskh.peremennayaボーダー≥2を。
  • 第5行のアルゴリズムカウンタは1デクリメントされます。
  • iskh.peremennaya <ボーダー2:第6節では3-5チームは限り条件が満たされるように実行されます

他のすべては、両方のアルゴリズムの仕事に似ています。

フローチャートサイクルパラメータ

(それは上記すでに発表されたが)パラメータを持つサイクルは、フォームのフローチャートを持っています。 ここでは単純化された組織構造です。

サイクルのパラメータへの基本的な要件

パラメータを持つサイクルは、環境の特定の種類を必要とします。

  • カウンタ境界間隔(T。E. Iskh.peremennaya境界1及び境界2)は、同じデータタイプに属している必要があります。 セグメントと参照変数の初期値と最終値との間の唯一の互換性がある場合の境界は、初期パラメータのデータ型によって形質転換されるため、プログラムが正しく動作してもよいです。
  • パラメータの値に属すべきデータのタイプは整数でなければなりません。 本当のタイプを使用することは推奨されません。
  • ループiskh.peremennaya力で値を変更して好ましくない。 そうしないと、ユーザーはほとんど現れ可能性のあるエラーを追跡することはできません。
  • 以下の場合におけるサイクルの他のタイプとは異なり、... ...行うのか、 以下のために...とdownto ...ステップを変更することはできませんありません。 1以外の設定。

ターボパスカル:ループの外に取得する方法

、すなわちループが存在することが多い問題がある。E.条件が常に真です。 ブレーク手順は前提条件、事後条件、パラメータとのサイクルから抜け出すのに役立ちます。 E.彼らの仕事を途中で終了されます。

パスカル(「永遠の」真実の条件を必要とするプログラミング)におけるパラメータとのサイクルが続行を使用して停止することができます。 次のようにここでは作業が編成されています。早期の現在の反復がその実行を終了し、制御は、なく、ループの外に次のチームに渡されます。

終了手続きは、プログラムコード内の特定のブロックのジョブを完了するために必要です。 これは、手順(機能)の内側に発生していると同時に、この「作品」のパフォーマンスは直ちに終了されます。 出口は本体に配置されている場合、それが終了します。

停止の手順は、次の動作原理を削減:完全な作業プログラムは終了します。

意思決定へのタスクの例

ユーザーが最初に学び、その後、コードを自分で書く練習パスカル」の例にパラメータを使用してトピック」サイクルを勉強した後、有用であろう。 単純なタスクは、将来プログラマが実践に理論を学び、その後、正常に適用するのに役立ちます。 意思決定と問題の例「オプションを指定したサイクル」で、あなたは簡単かつ困難な見つけることができます。 ここでの仕事とアルゴリズムを扱っ3つのタスク、すべての意思決定への説明とコメントしているがあります。

目標1

ランダムに選択された範囲内の整数の二次元アレイ[0..199]を、与えられました。 合計数字の2の倍数である、すべて2桁の番号の数を検索します。

アルゴリズムは次のとおりです。

  1. 2次元配列を作成します。
  2. 以下の条件に準拠して各番号を確認します。

A)もし9

B)MODで割ることにより、第2の桁数を選択します。

C)自分に割り当てられた番号を捨てます。

D)所定量のMOD 2で割りました。

結果が0に等しい場合、E)、カウンタが1だけインクリメントされます。

タスク2

整数要素の一次元アレイを考えます。 正の数の数を検索します。

アルゴリズムは次のとおりです。

  1. ランダマイズによって作成された一体型の要素の配列を作成します。
  2. サイクルパラメータは入れて条件文を条件X> 0を満たすために与えられた要素を確認対象となる、IF。
  3. 条件が満たされた場合、カウンタは1だけインクリメントされます。
  4. サイクル後、得られたカウント値を表示する必要があります。

括弧内のデータは{}コメントです。 ライン11は、画面上の2つの方法の配列を表示することができる:細胞の一定数の各要素に割り当てる番号との間に隙間を残すように(この場合、その5)。

12行目では、可変カウンタは、2つの方法で増大させることができる。前の値のいずれかが1を追加したり標準機能社を使用します

タスク3

大切な正方行列。 メイン対角線上にある正の要素の数を検索します。

説明:

対角主番号の配列は、左上から右下に延びています。 それの特別な特徴は、行と列のインデックスが同じであるという事実です。 したがって、1サイクルが残りの要素を無効化せずに行を移動するのに十分なアレンジ。

アルゴリズムは次のとおりです。

  1. 正方行列を作成します。
  2. 正の要素の数を担当する変数、値が「0」を割り当てます。
  3. 正方行列を作成するためのサイクルを作成します。
  4. 検証サイクル条件を整理する:数が> 0主対角線上にある場合、カウンタは1だけインクリメントされます。
  5. 画面上のサイクルの満了後、正の要素の数を格納する変数の値を表示します。

Cおよびターボパスカル:2つのプログラミング言語間の対立

原則として、自尊心のプログラマはいくつかの言語を知っています。 例えば、C ++、ターボパスカル、デルファイ、Java(登録商標)など80居住で顕著であったそれらの二つの間。D.の対決であってもよいです。 (C及びターボパスカル)。 20世紀の終わりには、戦いなどは、C ++とJavaの間で観察されました。

アルゴル60およびFortran、パスカル、C、JavaとC ++:3ダースのプログラミング言語の仮想空間では、その反対サイバースペースの最大の心を打つための3つの最も印象的なペアがあります。 もちろん、これらの感情は主観ですが、1時間またはペアのもう一つのリーダーでした。 これは、業界の要件と、特定のソフトウェア製品の必要性によるものでした。 70-IESで。 90でターボパスカル、 - - C ++ 80の "ルールドの世界" のFortran、。 もちろん、それらのどれも「死亡しませんでした」。 むしろ、彼らは、洗練されたソフトウェア製品に変換されます。

プログラミング言語の研究では、そのいくつかのテーマ同様の構文に気づくことがあります。 したがって、Cにおけるパラメータとのサイクルは、いくつかの瞬間を除き、Pascalで同様の構造に似ています。

新世界に積極的に欧州の研究努力の結果を使用している間に興味深いことに、ターボパスカル(旧世界)の開発者は、アメリカの科学者たちの発展の恩恵を受けました。 ヨーロッパでは、開発者は、プログラミング言語の純度とコンパクトさの高い程度を提唱している、とアメリカの心は、より多くのコードを書くの新しい-fangledトレンドの使用に向かって傾斜しています。

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ja.delachieve.com. Theme powered by WordPress.