問題:
20から120までの整数の中で17で割り切れる値をすべて表示し、 その総個数を求めるプログラムを作成しなさい。
解いたやつ:
function Hoge(min, max, num: Integer): Integer; var i: Integer; begin Result := 0; if (min > max) or (num <= 0) then begin ShowMessage('何らかのエラーが発生しました'+ #13 +'諦めてください'); Exit; end; for i := min to max do begin if (i mod num) = 0 then Inc(Result); end; end; // var i, j: Integer; // i := Hoge(20, 120, 17); // for j := 1 to i do ShowMessage(InttoStr(j*17));
問題:
数値列が並んでいるテキストファイルがあって 12 34 68 1 4 2 89 24 58 7 46 … こんな感じのが10行あります これを行ごとに足し算するプログラムをつくりなさい 行ごとに数字の個数は、5つだったり、6つだったりバラバラです
解いたやつ:
function addNums(str: String): Integer; var s: String; t: String; i: Integer; begin Result := 0; s := str + ' ' + #0; i := 1; while byte(s[i]) <> 0 do begin if s[i] = ' ' then begin Result := Result + StrtoInt(t); Inc(i); t := ''; continue; end; t := t + s[i]; Inc(i); end; end; // var // sl: TStringList; // i : Integer; // begin // sl := TStringList.Create; // try // sl.LoadFromFile('number.txt'); // for i := 0 to sl.Count -1 do ShowMessage(InttoStr(addNums(sl[i]))); // finally // sl.Free; // end; // end;