#数値Nを文字列として取得
N=input()
#Nの桁数(文字列の長さ)を求める
length=len(N)
#合計結果ansを0で初期化
ans=0
#この文字列をリストとして、各桁を数値に変換して足していく
for i in range(length):
#print('現在の合計値ans:【'+str(ans)+'】')
num=int(N[i])#ここで数値に変換している
#print(str(i+1)+'桁目の数は「'+str(num)+'」です。')
#print('現在の合計値ansに「'+str(num)+'」を加えます')
ans+=num#合計値を加算演算子で計算
#print('計算後のans:【'+str(ans)+'】')
#print('------------------------')
#合計値を出力する
print(ans)
スッキリするように、コメントアウトした部分を省いたコードです。
#数値Nを文字列として取得
N=input()
#Nの桁数(文字列の長さ)を求める
length=len(N)
#合計結果ansを0で初期化
ans=0
#この文字列をリストとして、各桁を数値に変換して足していく
for i in range(length):
num=int(N[i])#ここで数値に変換している
ans+=num#合計値を加算演算子で計算
#合計値を出力する
print(ans)
//ForループとIF文でsliceメソッドを使って数字列Nから各桁を切り出して、数値に変換してansに加算演算子で加算する
console.log('<<<ループに入ります!!>>>');
for (let i = 0; i < Len; i++) {
let num = N.toString().slice(i, i + 1);
console.log(`現在の合計値ans:【${ans}】`);
num=Number(num);
console.log(`文字列「${i}」番目は「${num}」です。`);
ans += num; //ここで加算演算子を使ってansに加えている
console.log(`「${num}」を加えた合計ansは【${ans}】になりました`);
console.log('---------------------------------');
}
console.log('<<<ループを抜けました。>>>');
手順8:ansの合計結果をログ出力で確認
console.log(ans);
手順9:スプレッドシードに2次元配列として出力するans2を宣言
ans2=[];
手順10:ansをans2にpushメソッドで追加する
ans2.push([ans]);
手順11:スプレッドシート出力前に二次元配列ans2のログ出力で確認する
console.log(ans2);
手順12:スプレッドシートの黄色いセルに格桁の合計が格納された二次元配列ans2を出力する
ss.getRange(3,2).setValue(ans2);
GASでの全コードはこちらになります。
function loop2no6() {
//スプレッドシートからアクティブシートをアクセスする
const ss = SpreadsheetApp.getActiveSheet();
//スプレッドシートの緑色のセルから整数N(この例では「813」)を取得する
const N = ss.getRange(1, 2).getValues();
//整数Nが取得できたことをログで確認
console.log(N);
//変数Lenに、整数Nの桁数を取得して代入する
const Len = N.toString().length;
//桁数Lenが取得できたことをログで確認する
console.log(`この数字列の桁数は、【${Len}】桁です。`);
//合計値として計算に使用する変数ansを0で初期化する
let ans = 0;
//ForループとIF文でsliceメソッドを使って数字列Nから各桁を切り出して、数値に変換してansに加算演算子で加算する
console.log('<<<ループに入ります!!>>>');
for (let i = 0; i < Len; i++) {
let num = N.toString().slice(i, i + 1);
console.log(`現在の合計値ans:【${ans}】`);
num = Number(num);
console.log(`文字列「${i}」番目は「${num}」です。`);
ans += num; //ここで加算演算子を使ってansに加えている
console.log(`「${num}」を加えた合計ansは【${ans}】になりました`);
console.log('---------------------------------');
}
console.log('<<<ループを抜けました。>>>');
//ansの合計結果をログ出力で確認
console.log(ans);
//スプレッドシードに2次元配列として出力するans2を宣言
ans2 = [];
//ansをans2にpushメソッドで追加する
ans2.push([ans]);
//スプレッドシート出力前に二次元配列ans2のログ出力で確認する
console.log(ans2);
//スプレッドシートの黄色いセルに格桁の合計が格納された二次元配列ans2を出力する
ss.getRange(3, 2).setValue(ans2);
}