戻り値とは?もどりち
戻り値とは、関数や手続が処理を終えたときに、呼び出し元へ返す結果の値。呼び出し元は返ってきた値を変数に入れたり、そのまま条件式に使ったりして次の処理へつなぐ。呼び出すときに材料として渡す引数とは向きが逆で、引数が入り口、戻り値が出口にあたる。値を返さない手続もあり、その場合は戻り値が無い。
最終更新:2026-10-10
この語が出る過去問を解く →背景
処理をいくつもの部品に分けると、中身を知らなくても「何を渡すと何が返るか」さえ分かれば組み合わせられる。この取り決めがあるおかげで担当を分けて開発でき、部品の作りを後から差し替えても呼び出す側を直さずに済む。戻り値は部品どうしの境界に置かれた出口であり、擬似言語の問題で処理の流れを追うときは、返ってきた値がどの変数に入るかを見失わないことが要点になる。
具体例
Microsoft Excelで「=SUM(A1:A10)」と書くと、A1からA10までの合計が戻り値としてセルに表示される。「=IF(B1>=60,"合格","不合格")」では、条件の判定結果に応じてどちらかの文字列が戻り値として返り、それがそのまま画面に出る。
試験での引っ掛け
引数との向きの取り違えが定番で、呼び出し元から渡すのが引数、呼び出し先から返るのが戻り値である。また戻り値は原則1つで、複数の結果を返したいときは配列などにまとめる。画面に表示する処理と値を返す処理も別物で、表示しただけでは呼び出し元は結果を受け取れない。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:令和4年度 秋期 ITパスポート試験 問78(IPA)
関数checkDigitは,10進9桁の整数の各桁の数字が上位の桁から順に格納された整数型の配列originalDigitを引数として,次の手順で計算したチェッ…
正解:j ← k + (j − 10 × k)
要点:2桁の数の桁和は商kと余りj−10kの和で求める
手順(2)は、合計値を各桁の数字に分けて足し直す処理です。合計は最大でも2桁なので、10で割った商kが十の位、j−10×kが一の位になります。したがって新しいjは十の位と一の位を足したk+(j−10×k)となります。
出典:令和4年度 秋期 ITパスポート試験 問96(IPA)
関数calcXと関数calcYは,引数inDataを用いて計算を行い,その結果を戻り値とする。関数calcXをcalcX(1)として呼び出すと,関数calcXの…
正解:a=num+2×i, b=iを2から6まで2ずつ増やす
要点:変数の変化から増分を逆算して式とループ条件を決める
calcXは1→3→7→13と毎回2ずつ増え幅が広がっており、iが1,2,3と進むことからaはnumに2×iを足す式だと分かります。calcYは1→5→13→25で増分が4,8,12なので、iは2,4,6と進む必要があり、2から6まで2ずつ増やすループ(同じ処理を何度も繰り返すこと)になります。
出典:令和5年度 秋期 ITパスポート試験 問64(IPA)
関数sigmaは、正の整数を引数maxで受け取り、1からmaxまでの整数の総和を戻り値とする。プログラム中のaに入れる字句として、適切なものはどれか。 〔プログ…
正解:calcX ← calcX + n
要点:総和は合計用変数にループ変数(繰り返しのたびに変わる変数)を毎回加算して求める
1からmaxまでの総和を求めるには、合計を保持する変数に、ループ(同じ処理を何度も繰り返すこと)のたびに現在のnを足していきます。calcXは0で初期化(最初に値を入れておくこと)されているので、calcX に n を加算する処理を繰り返せば総和が得られます。
出典:令和6年度 秋期 ITパスポート試験 問62(IPA)
関数convertは、整数型の配列を一定のルールで文字列に変換するプログラムである。関数convertをconvert(arrayInput)として呼び出したと…
正解:{1, 1, 2, 1, 0}
要点:要素が1ならA、それ以外はBを順に連結する処理
このプログラムは配列を先頭から順に調べ、要素が1なら"A"を、そうでなければ"B"を末尾に連結します。戻り値が"AABAB"になるには、1番目と2番目が1、3番目は1以外、4番目が1、5番目は1以外という並びが必要です。この条件を満たすのは、1,1,1以外,1,1以外の順に並ぶ配列です。
出典・参考
公式シラバスの7 基礎理論 > 37. アルゴリズムとプログラミング > (2) アルゴリズムの表現方法に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。