paiza レベルアップ問題集 「FINAL問題 【整数の行入力】1,000行の整数の入力」をPythonとGASで解いてみた

この記事を読むことで、Pythonで標準入力を使って、ループを用いて1000行の整数を取得する方法が学べます。GASではスプレッドシートで値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

【整数の行入力】1,000行の整数の入力 (paizaランク D 相当)

問題:
整数 a_1, a_2, … , a_999, a_1000 が 1,000 行で与えられるので a_1, a_2, … , a_999, a_1000 を 1,000 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:ループを使って標準入力で整数を取得し出力する

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

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

入力例1
1189
8004
7243
5507
3237
(省略)


出力例1
1189
8004
7243
5507
3237
(省略)


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

(1000行の一部分です。)

このコードで入出力を行います。
ループを1000回まわして、その中で標準入力で変数tempに代入して、tempを出力しています。

#ループ内で標準入力を使って1000行の整数を取得し出力する
for i in range(1000):
    temp=int(input())
    print(temp)

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

(以下、画像は1000行の一部分です。)

Pythonは以上です。

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

■ GASでの解き方 ■

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

緑色の列の所に入力した整数を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶした列の所に、二次元配列として取得した整数が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの列の整数を取得して1000行の整数を二次元配列numに格納

3:スプレッドシートの出力前に1000行の整数が格納された二次元配列numを取得できたことをログ出力で確認する

4:スプレッドシートの黄色い列の所に二次元配列numを出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの列の整数を取得して100個の整数を二次元配列numに格納

num=ss.getRange(2,1,1000).getValues();

手順3:スプレッドシートの出力前に100個の整数が格納された二次元配列numを取得できたことをログ出力で確認する

console.log(num);

手順4:スプレッドシートの黄色い列の所に二次元配列numを出力する

ss.getRange(2,3,1000).setValues(num);

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

GASでの全コードはこちらになります。

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

  //緑色のセルの列の整数を取得して1000行の整数を二次元配列numに格納
  num=ss.getRange(2,1,1000).getValues();

  //スプレッドシートの出力前に1000行の整数が格納された二次元配列numを取得できたことをログ出力で確認する
  console.log(num);

  //スプレッドシートの黄色い列の所に二次元配列numを出力する
  ss.getRange(2,3,1000).setValues(num);

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

石神井公園のサイクルボートから撮影した桜

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 4 100 行の整数の入力」をPythonとGASで解いてみた

この記事を読むことで、Pythonで標準入力を使って、ループを用いて100個の整数を取得する方法が学べます。GASではスプレッドシートで値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

100 行の整数の入力 (paizaランク D 相当)

問題:
整数 a_1, a_2, … , a_99, a_100 が 100 行で与えられるので a_1, a_2, … , a_99, a_100 を 100 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:ループを使って標準入力で整数を取得し出力する

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

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

入力例1
4090
4199
9064
6517
9620



(省略)



7940
452
7535
9976
4574

出力例1
4090
4199
9064
6517
9620



(省略)



7940
452
7535
9976
4574

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

このコードで入出力を行います。
ループを100回まわして、その中で標準入力で変数tempに代入して、tempを出力しています。

#標準入力で100行取り込んで出力する
for i in range(100):
    temp=int(input())
    print(temp)

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

(以下、画像は100行の一部分です。)

Pythonは以上です。

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

■ GASでの解き方 ■

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

緑色の列の所に入力した整数を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶした列の所に、二次元配列として取得した整数が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの列の整数を取得して100個の整数を二次元配列numに格納

3:スプレッドシートの出力前に100個の整数が格納された二次元配列numを取得できたことをログ出力で確認する

4:スプレッドシートの黄色い列の所に二次元配列numを出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの列の整数を取得して100個の整数を二次元配列numに格納

num=ss.getRange(2,1,100).getValues();

手順3:スプレッドシートの出力前に100個の整数が格納された二次元配列numを取得できたことをログ出力で確認する

console.log(num);

手順4:スプレッドシートの黄色い列の所に二次元配列numを出力する

ss.getRange(2,3,100).setValues(num);

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

GASでの全コードはこちらになります。

function standardInput17(){

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

  //緑色のセルの列の整数を取得して100個の整数を二次元配列numに格納
  num=ss.getRange(2,1,100).getValues();

  //スプレッドシートの出力前に100個の整数が格納された二次元配列numを取得できたことをログ出力で確認する
  console.log(num);

  //スプレッドシートの黄色い列の所に二次元配列numを出力する
  ss.getRange(2,3,100).setValues(num);

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

この記事を書いている今は3月。春といえば桜。2021年に撮影した遊歩道の桜です。

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 3 5 行の整数の入力」をPythonとGASで解いてみた

この記事を読むことで、Pythonで標準入力を使って、ループを用いて5つの整数を取得する方法が学べます。GASではスプレッドシートで値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

5 行の整数の入力 (paizaランク D 相当)

問題:整数 a_1, a_2, a_3, a_4, a_5 が 5 行で与えられるので a_1, a_2, a_3, a_4, a_5 を 5 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:ループを使って標準入力で整数を取得し出力する

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

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

入力例2
1111
3333
5555
7777
9999

出力例2
1111
3333
5555
7777
9999

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

このコードで入出力を行います。

#ループを使って標準入力で整数を取得し出力する
for i in range(5):
    temp=int(input())
    print(temp)

Pythonは以上です。

■ GASでの解き方 ■

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

緑色の所に入力した整数を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した整数が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの整数を取得して5つの整数を二次元配列numに格納

3:スプレッドシートの出力前に5つの整数が格納された二次元配列numを取得できたことをログ出力で確認する

4:スプレッドシートの黄色いセルに二次元配列numを出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの整数を取得して5つの整数を二次元配列numに格納

num=ss.getRange(2,1,5).getValues();

手順3:スプレッドシートの出力前に5つの整数が格納された二次元配列numを取得できたことをログ出力で確認する

console.log(num);

手順4:スプレッドシートの黄色いセルに二次元配列numを出力する

ss.getRange(2,3,5).setValues(num);

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

GASでの全コードはこちらになります。

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

  //緑色のセルの整数を取得して5つの整数を二次元配列numに格納
  num=ss.getRange(2,1,5).getValues();

  //スプレッドシートの出力前に5つの整数が格納された二次元配列numを取得できたことをログ出力で確認する
  console.log(num);

  //スプレッドシートの黄色いセルに二次元配列numを出力する
  ss.getRange(2,3,5).setValues(num);

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

石神井公園の桜です。もうすぐ春ですね。

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 2 2 行の整数の入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで標準入力を使って、2つの整数を取得する方法が学べます。GASではスプレッドシートを用いて値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

2 行の整数の入力 (paizaランク D 相当)

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

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

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

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

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

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

入力例1
81
3

出力例1
81
3

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

手順1で標準入力を使って整数を取得します。

#標準入力で整数を取得する
a=int(input())
b=int(input())

手順2では取得した整数を出力します。

#取得した整数を出力する
print(a)
print(b)

ここまでのコードをまとめます。

#標準入力で整数を取得する
a=int(input())
b=int(input())

#取得した整数を出力する
print(a)
print(b)

■ GASでの解き方 ■

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

緑色の所に入力した整数を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した整数が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの整数を取得して整数a,bを二次元配列numに格納

3:スプレッドシートの出力前に整数a,bが格納された二次元配列numを取得できたことをログ出力で確認する

4:スプレッドシートの黄色いセルに二次元配列numを出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの整数を取得して整数a,bを二次元配列numに格納

num=ss.getRange(1,2,2).getValues();

手順3:スプレッドシートの出力前に整数a,bが格納された二次元配列numを取得できたことをログ出力で確認する

console.log(num);

手順4:スプレッドシートの黄色いセルに二次元配列numを出力する

ss.getRange(5,2,2).setValues(num);

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

GASでの全コードはこちらになります。

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

  //緑色のセルの整数を取得して整数a,bを二次元配列numに格納
  num=ss.getRange(1,2,2).getValues();

  //スプレッドシートの出力前に整数a,bが格納された二次元配列numを取得できたことをログ出力で確認する
  console.log(num);

  //スプレッドシートの黄色いセルに二次元配列numを出力する
  ss.getRange(5,2,2).setValues(num);

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

お台場の観覧車。 赤いですね。

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 1 1 行の整数の入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで標準入力を使って整数を取得する方法が学べます。GASではスプレッドシートを用いて値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

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

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

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で整数aを取得する
2:取得した整数を出力する

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

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

入力例1
813

出力例1
813

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

手順1で標準入力を使って整数を取得します。

#標準入力で整数を取得する
a=int(input())

手順2では取得した整数を出力します。

#取得した整数を出力する
print(a)

ここまでのコードをまとめます。

#標準入力で整数を取得する
a=int(input())

#取得した整数を出力する
print(a)

■ GASでの解き方 ■

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

緑色の所に入力した整数を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した整数が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの整数を取得する


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


4:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの整数を取得する

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

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

console.log(s);

手順4:スプレッドシートの黄色いセルに出力する

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

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

GASでの全コードはこちらになります。

function standardInput14(){

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

  //緑色のセルの整数を取得する
  const a=ss.getRange(1,2).getValue();

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

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

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

世界自閉症啓発デーとその習慣に撮影した都庁です。
都庁は西新宿にあります。

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「FINAL問題 【半角スペース区切りの入力】半角スペース区切りの 1,000 個の入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで空白スペースを含む1行の文字列を取得して、空白スペースの所で区切って、ループを使って1000行の文字列に出力する方法が学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。
更にPythonではループを基本的な書き方と内包表記の書き方の2通りで掲載します。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

【半角スペース区切りの入力】半角スペース区切りの 1,000 個の入力 (paizaランク D 相当)

問題:文字列 s_1, s_2, … s_999, s_1000 が半角スペースで区切られて 1 行で与えられます。各文字列を出力するごとに改行し 1,000 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で空白スペースを含む文字列を区切って取得する

2:取得した文字列がリストになっていることを確認する


3:ループを使って出力する

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

今回は下記の入出力例1を用います。
(1000行は長すぎるので、このブログで入出力例を表示することは省きます。)

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

手順1で標準入力で空白文字を区切って取得します。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

手順2では先ほどの手順で取得した文字列を出力して、リストとして空白区切りで出力されていることを確認します。

#取得した文字列がリストになっていることを確認する
print(s)

手順3ではループを使って出力します。

#ループを使って出力する
for string in s:
    print(string)

これを内包表記を使って書いた場合のコードです。先ほどのコードと見比べると、1行になりよりシンプルなコードが書けました。

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ここまでのコードをまとめます。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
print(s)

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ただ、このままでは求められる出力結果に対して冗長な部分があるので、不要な箇所はコメントアウトします。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
#print(s)

#ループを使って出力する
#for string in s:
#    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

更に提出ように最小限のコードになるようにしたスッキリなコードはこちらになります。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#内包表記を使ったループで出力する
[print(string) for string in s]

提出する直前の出力結果です。

■ GASでの解き方 ■

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

緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納
する

3:定数sに配列として格納出来たことをログ出力で確認する

4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

7:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する

const s=ss.getRange(1,2).getValue().split(‘ ‘);

手順3:定数sに格納出来たことをログ出力で確認する

console.log(s);

手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

let s2 = [];

手順5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

//ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for(let i=0;i<s.length;i++){
    s2.push([s[i]]);
  }

手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

console.log(s2);

手順7:スプレッドシートの黄色いセルに出力する

ss.getRange(3,2,s2.length).setValues(s2);

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

GASでの全コードはこちらになります。

function standardInput13(){

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

  //緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する
  const s=ss.getRange(1,2).getValue().split(' ');

  //定数sに配列として格納出来たことをログ出力で確認する
  console.log(s);

  //スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
  let s2=[];

  //ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for(let i=0;i<s.length;i++){
    s2.push([s[i]]);
  }

  //スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
  console.log(s2);

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

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

フランスのクリスタルメーカー、バカラのシャンデリア、クールなブルー

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 4 半角スペース区切りの 10 個の入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで空白スペースを含む1行の文字列を取得して、空白スペースの所で区切って、ループを使って10個の文字列に出力する方法が学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。
更にPythonではループを基本的な書き方と内包表記の書き方の2通りで掲載します。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

半角スペース区切りの 10 個の入力 (paizaランク D 相当)

問題:文字列 s_1, s_2, … s_9, s_10 が半角スペースで区切られて 1 行で与えられます。各文字列を出力するごとに改行し 10 行で出力してください。

ではまず、Pythonで解いてみます。
今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で空白スペースを含む文字列を区切って取得する

2:取得した文字列がリストになっていることを確認する

3:ループを使って出力する

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

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

入力例1
VypymzW25l 3xsXWAK NYwbs2MRC kh4 mr38o8W9 94 fEJ 6THlW fJFTy n

出力例1
VypymzW25l
3xsXWAK
NYwbs2MRC
kh4
mr38o8W9
94
fEJ
6THlW
fJFTy
n

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

手順1で標準入力で空白文字を区切って取得します。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

手順2では先ほどの手順で取得した文字列を出力して、リストとして空白区切りで出力されていることを確認します。

#取得した文字列がリストになっていることを確認する
print(s)

手順3ではループを使って出力します。

#ループを使って出力する
for string in s:
    print(string)

これを内包表記を使って書いた場合のコードです。先ほどのコードと見比べると、1行になりよりシンプルなコードが書けました。

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ここまでのコードをまとめます。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
print(s)

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ただ、このままでは求められる出力結果に対して冗長な部分があるので、不要な箇所はコメントアウトします。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
#print(s)

#ループを使って出力する
#for string in s:
#    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

更に提出ように最小限のコードになるようにしたスッキリなコードはこちらになります。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#内包表記を使ったループで出力する
[print(string) for string in s]

提出する直前の出力結果です。

■ GASでの解き方 ■

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

緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する

3:定数sに配列として格納出来たことをログ出力で確認する

4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

7:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する

const s=ss.getRange(1,2).getValue().split(‘ ‘);

手順3:定数sに格納出来たことをログ出力で確認する

console.log(s);

手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

let s2 = [];

手順5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

//ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for(let i=0;i<s.length;i++){
    s2.push([s[i]]);
  }

手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

console.log(s2);

手順7:スプレッドシートの黄色いセルに出力する

ss.getRange(3,2,s2.length).setValues(s2);

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

GASでの全コードはこちらになります。

function standardInput12() {

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

  //緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する
  const s = ss.getRange(1, 2).getValue().split(' ');

  //定数sに配列として格納出来たことをログ出力で確認する
  console.log(s);

  //スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
  let s2 = [];

  //ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for (let i = 0; i < s.length; i++) {
    s2.push([s[i]]);
  }

  //スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
  console.log(s2);

  //スプレッドシートの黄色いセルに出力する
  ss.getRange(3, 2, s2.length).setValues(s2);
}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

フランスのクリスタルメーカー、バカラのシャンデリア

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 3 半角スペース区切りの 3 つの入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで空白スペースを含む1行の文字列を取得して、空白スペースの所で区切って、ループを使って3つの文字列に出力する方法が学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。
更にPythonではループを基本的な書き方と内包表記の書き方の2通りで掲載します。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

半角スペース区切りの 3 つの入力 (paizaランク D 相当)

問題:文字列 s_1, s_2, s_3 が半角スペースで区切られて 1 行で与えられます。
各文字列を出力するごとに改行し 3 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で空白スペースを含む文字列を区切って取得する

2:取得した文字列がリストになっていることを確認する

3:ループを使って出力する

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

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

入力例1
good morning paiza

出力例1
good
morning
paiza

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

手順1で標準入力で空白文字を区切って取得します。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

手順2では先ほどの手順で取得した文字列を出力して、リストとして空白区切りで出力されていることを確認します。

#取得した文字列がリストになっていることを確認する
print(s)

手順3ではループを使って出力します。

#ループを使って出力する
for string in s:
    print(string)

これを内包表記を使って書いた場合のコードです。先ほどのコードと見比べると、1行になりよりシンプルなコードが書けました。

#ループを使って出力する
for string in s:
    print(string)

#内包表記を使ったループで出力する
[print(string) for string in s]

ここまでのコードをまとめます。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
print(s)

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ただ、このままでは求められる出力結果に対して冗長な部分があるので、不要な箇所はコメントアウトします。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
#print(s)

#ループを使って出力する
#for string in s:
#    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

更に提出ように最小限のコードになるようにしたスッキリなコードはこちらになります。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#内包表記を使ったループで出力する
[print(string) for string in s]

提出する直前の出力結果です。

■ GASでの解き方 ■

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

緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する


3:定数sに配列として格納出来たことをログ出力で確認する

4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

7:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する

const s=ss.getRange(1,2).getValue().split(‘ ‘);

手順3:定数sに格納出来たことをログ出力で確認する

console.log(s);

手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

let s2 = [];

手順5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

//ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for(let i=0;i<s.length;i++){
    s2.push([s[i]]);
  }

手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

console.log(s2);

手順7:スプレッドシートの黄色いセルに出力する

ss.getRange(3,2,s2.length).setValues(s2);

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

GASでの全コードはこちらになります。

function standardInput11() {

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

  //緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する
  const s = ss.getRange(1, 2).getValue().split(' ');

  //定数sに配列として格納出来たことをログ出力で確認する
  console.log(s);

  //スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
  let s2 = [];

  //ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for (let i = 0; i < s.length; i++) {
    s2.push([s[i]]);
  }

  //スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
  console.log(s2);

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

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

水元公園、ゴールデンウィークにサイクリングでグリーンエクササイズ(2018年コロナ前撮影)

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 2 半角スペース区切りの 2 つの入力」をPythonとGASで解いてみた

この記事を読むことで、PythonとGASで空白スペースを含む1行の文字列を取得して、空白スペースの所で区切って、2つの文字列に出力する方法が学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。
更にPythonではループを基本的な書き方と内包表記の書き方の2通りで掲載します。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

半角スペース区切りの 2 つの入力 (paizaランク D 相当)

問題:文字列 s_1, s_2 が半角スペースで区切られて 1 行で与えられます。各文字列を出力するごとに改行し 2 行で出力してください。

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で空白スペースを含む文字列を区切って取得する
2:取得した文字列がリストになっていることを確認する
3:ループを使って出力する

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

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

入力例1
hello paiza

出力例1
hello
paiza

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

手順1で標準入力で空白文字を区切って取得します。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

手順2では先ほどの手順で取得した文字列を出力して、リストとして空白区切りで出力されていることを確認します。

#取得した文字列がリストになっていることを確認する
print(s)

手順3ではループを使って出力します。

#ループを使って出力する
for string in s:
    print(string)

これを内包表記を使って書いた場合のコードです。先ほどのコードと見比べると、1行になりよりシンプルなコードが書けました。

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ここまでのコードをまとめます。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
print(s)

#ループを使って出力する
for string in s:
    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

ただ、このままでは求められる出力結果に対して冗長な部分があるので、不要な箇所はコメントアウトします。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#取得した文字列がリストになっていることを確認する
#print(s)

#ループを使って出力する
#for string in s:
#    print(string)
    
#内包表記を使ったループで出力する
[print(string) for string in s]

更に提出ように最小限のコードになるようにしたスッキリなコードはこちらになります。

#標準入力で空白スペースを含む文字列を区切って取得する
s=input().split(' ')

#内包表記を使ったループで出力する
[print(string) for string in s]

提出する直前の出力結果です。

■ GASでの解き方 ■

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

緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する


3:定数sに配列として格納出来たことをログ出力で確認する


4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

7:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する

const s=ss.getRange(1,2).getValue().split(‘ ‘);

手順3:定数sに格納出来たことをログ出力で確認する

console.log(s);

手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

let s2 = [];

手順5:ループを使ってpushメソッドでs2にsを2次元配列として追加する

 //ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for(let i=0;i<s.length;i++){
    s2.push([s[i]]);
  }

手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

console.log(s2);

手順7:スプレッドシートの黄色いセルに出力する

ss.getRange(3,2,s2.length).setValues(s2);

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

GASでの全コードはこちらになります。

function standardInput10() {

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

  //緑色のセルの所を取得して、空白区切り文字の所で区切って定数sに格納する
  const s = ss.getRange(1, 2).getValue().split(' ');

  //定数sに配列として格納出来たことをログ出力で確認する
  console.log(s);

  //スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
  let s2 = [];

  //ループを使ってpushメソッドでs2にsを2次元配列として追加する
  for (let i = 0; i < s.length; i++) {
    s2.push([s[i]]);
  }

  //スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
  console.log(s2);

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

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

東池袋にある、サンシャイン水族館から1枚(コロナ前2018年撮影)

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

paiza レベルアップ問題集 「STEP: 1 1 つの入力」をPythonとGASで解いてみた

この記事を読むことで、Pythonで最も基本的な標準入力の書き方を学べます。また、GASではスプレッドシートを用いて値を取得して出力しています。

このコーナーでは、学習コンテンツpaizaラーニングレベルアップ問題集をPythonとGASの両方で解いて全コードの解説をしています。
PythonとGASの両方のコードを用いて、全コード及び部分的にも可能な限り詳細に記載いたしました。

GASはスプレッドシートを使っています。
GASはGoogle Apps Scriptと言って、JavaScriptの文法をベースにしているので、JavaScriptの学習中の方にもお役立て出来るかも知れません。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

paizaでの解答はPythonで行いましたが、この記事ではPythonのコードと共に、同じ問題を現在学習中のGASだったらどう解くのか、スプレッドシートでバインドして作ってみました。

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

問題:半角スペースを含まない文字列 s が 1 行で与えられるので、そのまま出力してください。

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

入力例3
paiza813

出力例3
paiza813

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

今回は、paiza.ioを使って解きます。paiza.ioの使い方はこちらから。

■ Pythonでの解き方 ■

手順として、

1:標準入力で文字列を取得する

2:取得した文字列を出力する

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

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

コードは下記になります。

#標準入力で文字列を取得する
    s=input()
    
    #取得した文字列を出力する
    print(s)

プログラムを実行した出力結果です。

■ GASでの解き方 ■

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

緑色の所に入力した文字列を取得して、それを黄色い所に出力します。その際、この黄色く塗りつぶしたセルの所に、二次元配列として取得した文字列が格納された配列を出力します。

※スプレッドシートに表示する場合は、二次元配列としての配列に追加をして作成します※

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

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

2:緑色のセルの所を取得して定数sに格納する

3:定数sに格納出来たことをログ出力で確認する

4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

5:pushメソッドでs2にsを2次元配列として追加する

6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

7:スプレッドシートの黄色いセルに出力する

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

const ss = SpreadsheetApp.getActiveSheet();

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

手順2:緑色のセルの所を取得して定数sに格納する

s = ss.getRange(1, 2).getValue();

手順3:定数sに格納出来たことをログ出力で確認する

console.log(s);

手順4:スプレッドシートに出力するため、二次元配列として取得するs2を宣言する

let s2 = [];

手順5:pushメソッドでs2にsを2次元配列として追加する

s2.push([s]);

手順6:スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する

console.log(s2);

手順7:スプレッドシートの黄色いセルに出力する

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

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

GASでの全コードはこちらになります。

function standardInput09() {

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

  //緑色のセルの所を取得して定数sに格納する
  s = ss.getRange(1, 2).getValue();

  //定数sに格納出来たことをログ出力で確認する
  console.log(s);

  //スプレッドシートに出力するため、二次元配列として取得するs2を宣言する
  let s2 = [];

  //pushメソッドでs2にsを2次元配列として追加する
  s2.push([s]);

  //スプレッドシートに出力する前にs2に二次元配列として格納されていることをログ出力で確認する
  console.log(s2);

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

}

宜しかったらコピペしてアレンジして見て下さい。
お疲れ様でした、ブレイクタイムフォトはこちらになります。

よみうりランド、ジュエルミネーション、グッジョ!

■ 参考文献の紹介■

じっくり丁寧にPythonを学びたい方向け。
まずはpaizaラーニングなどの学習コンテンツで学んで、基礎をマスターしたら、この本でじっくりと初級から中級レベルを目指せます。

初めてGASを学ぶ方向け。
スプレッドシートの基本的な使い方からGASのベースとなるJavaScriptの基礎文法、GASでの初歩的なプログラミングを学べます。

GASに少し慣れて来たら、基礎固めとリファレンスとしてこの本でじっくり学べます。

サイトマップはこちらから

paizaレベルアップ問題集でPythonとGASを解いて見たに戻る
メインメニューに戻る
Python自作サンプル
GASサンプル
基本情報技術者試験

プログラミングのアンケートにご協力頂ける方はこちらのフォームで勉強法など色々と教えて下さい。

←前の問題へ          次の問題へ→

モバイルバージョンを終了