paiza レベルアップ問題集 標準入力その5「STEP: 1 1 つの整数の入力」をPythonとGASの両方で解いたコードの紹介

この記事を読むことで、Pythonで標準入力を使って1行の整数を取得する方法が学べます。

取得する対象が整数ですので、intの中にinputを用います。
GASではスプレッドシートで値を取得して出力しています。

このコーナーでは、プログラミング学習コンテンツpaizaラーニングレベルアップ問題集を、PythonとGAS(Google Apps Script)の両方で同じ問題を解いたコードを公開している学習ログです。

Python・GASのどちらの言語のコードも可能な限り詳細に解説致します。
GASはスプレッドシートのエディタを使ってコードを書いております。

Pythonではpaizaに入会しなくても問題集を解きたい方向けにpaiza.ioを用いております。paiza.ioの使い方はこちらから。

(入会するか否かは問題集を解いて見てからの読者様のご判断にお任せ致します。
どちらの選択をされても記事を読めるようになっておりますので、ご安心なさって下さい。)


1 つの整数の入力 (paizaランク D 相当)

問題:
整数 a が与えられるので a を出力してください。

ではまず、Pythonで解いてみます。


手順として、

1:標準入力で整数を取得する

2:取得した整数を出力する

の2ステップで行います。

今回は下記の入出力例1を用います。

入力例1
813

出力例1
813

まず、準備として、paiza.ioにこのように入力します。
(入力例1をコピペしたのみ)

Green rounded button labeled '実行 (Ctrl-Enter)' indicating Run/Execute; below, a tab labeled '入力' and a text field showing 813

下記のコードで入力と出力を行います。
コメントに書いてある通り、整数を標準入力で取得したい時はintの中にinputを入れたコードを書きます。

#整数を標準入力で取得する為、intとinputを使用する
a=int(input())
print(a)

このコードの実行(出力)結果です。

Green rounded Run button labeled '実行 (Ctrl-Enter)'; tab bar shows 出力・入力・コメント with a blue 0 badge; number 813 displayed below.

Pythonは以上です。

次は、GASで解いて行きます。


今度は、同じ問題をGASで解いてみます。
まず、スプレッドシートにこの様に配置しました。

Spreadsheet fragment with A and B columns. Row 1: '入力' in A and '813' in a green B cell. Row 2 shows a blank B cell. Row 3: '出力' in A and a blank yellow B cell.

緑色のセルB1(1,2)に入力した整数を取得して、それを黄色いセルB3(3,2)に出力します。

手順はこのようになります。

1:SpreadSheetAppから階層を辿って現在のシートにアクセスする

2:緑色のセルB1(1,2)の整数を取得してaに格納


3:スプレッドシートの出力前にaを取得できたことをログ出力で確認する


4:スプレッドシートの黄色いセルB3(3,2)にaを出力する

手順1: SpreadSheetAppから階層を辿って現在のシートにアクセスする

const ss = SpreadsheetApp.getActiveSheet();

ここで定数ssにSpreadsheetAppから階層を辿ってアクティブシートにアクセスしています。

このコードを関数「standardInput1」の中に書いて行きます。

Standard Inputで標準入力の意味です。

function standardInput1() {

  //SpreadSheetAppから階層を辿って現在のシートにアクセスする
  const ss=SpreadsheetApp.getActiveSheet();

}

手順2:緑色のセルB1(1,2)の整数を取得してaに格納

const a=ss.getRange(1,2).getValue();

function standardInput1() {

  const ss=SpreadsheetApp.getActiveSheet();

  //緑色のセルB1(1,2)の整数を取得してaに格納
  const a=ss.getRange(1,2).getValue();

}

手順3:スプレッドシートの出力前にaを取得できたことをログ出力で確認する

console.log(a);

コードと実行結果です。

function standardInput1() {

  const ss=SpreadsheetApp.getActiveSheet();
  const a=ss.getRange(1,2).getValue();

  //スプレッドシートの出力前にaを取得できたことをログ出力で確認する
  console.log(a);

}
UI panel showing three rows: top '実行開始' (Start execution), middle '813', bottom '実行完了' (Execution complete).

手順4:スプレッドシートの黄色いセルB3(3,2)にaを出力する

ss.getRange(3,2).setValue(a);

コードと実行後のスプレッドシートです。

function standardInput1() {

  const ss=SpreadsheetApp.getActiveSheet();
  const a=ss.getRange(1,2).getValue();
  console.log(a);

  //スプレッドシートの黄色いセルB3(3,2)にaを出力する
  ss.getRange(3,2).setValue(a);

}
Spreadsheet snippet: column A shows 输入 (input) and column B shows 813; row 3 shows 输出 (output) with 813 highlighted in yellow.

GASは以上です。


お疲れ様でした。ブレイクタイムPhotoは、

Cherry blossoms in full bloom on branches against a bright blue sky.

遊歩道の桜です。

標準入力その4へ           次の問題へ→

ご精読有難うございました。

■ GASの入門書の紹介です ■

詳解! Google Apps Script完全入門 [第3版]
単行本
Kindle版(電子書籍)

■ 関連記事 ■

paizaレベルアップ問題集「標準入力5」へ戻る
paizaレベルアップ問題集_PythonとGASのコード紹介トップページへ

写真クリエイターとしての活動
自己紹介

投稿者アバター
nekosiestr
いつもブログをご覧頂きまして、誠に有難うございます。 Excelやデータベース、プログラミングを学習する傍ら、趣味で写真を撮影してPhotoshopで編集しております。

投稿者: nekosiestr

いつもブログをご覧頂きまして、誠に有難うございます。