スピーカ1:のは、そのプログラムを書いてみましょう 正の入力を求め 整数nは、その後、プリントアウト すべての数字の合計が 1〜nである。 さて、ここでは私が済ませた、主持って すでに事前に書かれた。 そして、ここで気づくの上部にある 主に、私はint型のnを宣言します。 やるしばらくの内側、私、 ループ、最初のプリントアウト 正の整数でお願いします。 それから私は、整数を取得するために進んでください CS50ライブラリのgetを持つユーザー Int関数。 [マイwhile条件ここで、私は nは以上であることを確認してください 私が実際に進む前に、1に等しい その値を使って何かをすることができません。 私は、次に何をしますか? まあ、私は私が行くよ関数を呼び出す シグマの担当者に連絡する あなたが持つかもしれない資本シグマ その数学のクラスからリコール あなたが何かを合計することを示しています ある値から別の。 そしてどのようなその関数が返すよう その戻り値は、私が店に行くよ その答えと呼ばれる変数に。 最後に、メインの私の最後の行では、私は今 その答えが何であるかをプリントアウトしようとして。 もちろん、我々は、まだ実装していない この関数はシグマ。 では、どのようにそれをやって行くのですか? さて、私のファイルの一番下に、私は今 関数を宣言するために進めていく つまり、intを返します。 そして、私はコールするつもりだ その関数シグマ。 そして、私は、入力としてそれを指定するつもりです その関数は、int型を受け入れます。 そして、私はであるためには、それを呼ぶことにします 代わりに、nの異なる、mである。 しかし、我々はそれを求めている可能性が 我々が望むほとんど何でも。 私は、この関数の本体の内側 おなじみを使用するように進めていく すなわちループを構築する。 しかし、私はまた正気のビットを行うつもりだ ことを確認するためにチェックする ユーザーが番号を私に提供していません 私は期待していないことに。 mがある場合は特に、私は何をするつもりだ 1未満と、やや恣意、 場合、私は単純に0を返すつもりだ 数が正ではありません 私は期待どおりの整数。 それから私は、変数を宣言するつもりだ 和と呼ばれ、0に初期化します これは最終的の合計を格納する 1とMとの間の数字がすべて表示されます。 そして私はおなじみのを使用するつもりだ フォワードループ構造。 私は1を取得するint型のために、私はより少ない またはMに等しい、Iプラスプラス。 そして、この本体内 ループ、私は単純に合計をするつもりです 合計プラス私に等しくなります。 または、より簡単に、合計プラス私は等しく、 これと同じ結果を達成しています。 した後、最後に、私は返す必要が 私が計算した合計値。 だから私は、還元額に追加します。 今、私はまだいないよ。 私はC言語を教える必要があることを、この この関数は、実際に存在しています。 だから私のファイルの上に私は宣言するつもりだ 私たちは関数を呼び出しました 署名と同じプロトタイプ、 関数を定義するとき、私は使用したことを 一瞬前。 具体的には、ちょうどメイン上、 私はint型するつもりです シグマ、int型のM、セミコロン。 機能を実装していない もう一度、単にそれを宣言する。 私は今、保存してコンパイルし、これを実行すると このプログラムは、のは私が得るか見てみましょう。 シグマ0ドットを作るシグマ0を大幅に削減する。 そして今度は、正の整数を提供してみましょう 2のように、私を与えるべきである 3、値の間にあるため 図1及び図2は、1 +2 3に等しいである。 そして実際、それは私が何を得るのです。 のは、この、もう一度実行してみましょう 3、言う、との時間。 だから私は、1プラス2プラスを取得する必要があります 3私に6を与える必要があります。 実際、私は6を得るか。 50と言う、のは1最後の値を試してみましょう。 および1275は、私たちの答えです。