1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Qiita Engineer Festa 2024(キータ・エンジニア・フェスタ 2024) - Qiita
において、約1ヶ月で38記事という大量の記事の投稿を要求されることがわかった。
そこで、あまりコストをかけずに記事数を稼ぐ方法を考えた結果、「Welcome to AtCoder を様々な言語で解く」ことを思いついた。
単に解くだけでなく、使用する言語仕様の解説を入れれば、記事として一応成立するだろう。

Welcome to AtCoder

PracticeA - Welcome to AtCoder

Welcome to AtCoder では、以下の形式で整数 $a$, $b$, $c$ および文字列 $s$ が入力として与えられる。

a
b c
s

この入力をもとに、与えられた整数の和 $sum = a + b + c$ および文字列 $s$ を、以下の形式で出力することが求められる。

sum s

今回用いるプロデルの機能

プロデルマニュアル

変数宣言

プロデルで始める日本語プログラミング言語入門(#2) 「値を記憶する変数」 - プロデルブログ
変数と代入文 - プロデル言語仕様

プロデルでは、変数名に漢字・ひらがな・カタカナ・英数字(全角・半角)を使用できる。
変数を最初に使う場所でその変数名を 【】で囲むことで、変数を宣言できる。
【】 を使わずに変数名を書いても変数を使えることもあるが、「てにはへ」を含む変数名などの宣言しないと使えない変数名があるため、宣言はした方が無難である。

変数宣言で 【変数名:型名】 と書くことで、型を指定して変数を宣言できる。
今回は、「整数」型を用いる。

計算と代入

式 - プロデル言語仕様
数値 - プロデル言語仕様
変数と代入文 - プロデル言語仕様

+-() などを用いた式を書くことで、計算を行うことができる。

(変数)は、(値)

と書くことで、「変数」に「値」を代入できる。
数値型の変数に文字列型の値を代入すると、自動でその文字列が表す数値に変換される。

標準入出力

コンソール - プロデルマニュアル

コンソールから受け取って(格納先の変数)とする

と書くことで、標準入力から1行読み込み、結果の文字列を指定した変数に代入できる。
代入する文字列に末尾の改行文字は含まれない。

(値)をコンソールへ表示して改行する

と書くことで、「値」を標準出力に出力し、さらに改行を出力できる。

文字列操作

文字列 - プロデルマニュアル
文字列を操作する - プロデル逆引き辞典
文字列関連操作 - プロデルマニュアル

「」 で囲むことで、文字列を表現できる。
「文字列[値]文字列」 のように文字列の中に値 (変数や式など) を [] で囲んで書くことで、その値を文字列中に展開できる。

以下の操作において、文字列の最初の文字は1文字目である。(すなわち、1-origin)

(探される文字列)から(探す文字列)を探して(変数)とする

と書くことで、「探される文字列」の中で最初に「探す文字列」が始まる場所の位置を表す数値を「変数」に格納できる。
JavaScriptでいうと 変数 = 探される文字列.indexOf(探す文字列) + 1; である。

(文字列)の先頭から(量)文字取り出して(変数)とする

と書くことで、「文字列」の最初の「量」文字の部分を「変数」に格納できる。
JavaScriptでいうと 変数 = 文字列.substring(0, 量 - 1); である。

(変数)は、(文字列)の(位置)文字目以降

と書くことで、「文字列」の「位置」文字目とそれより後の部分を「変数」に格納できる。
JavaScriptでいうと 変数 = 文字列.substring(位置 - 1); である。

この「文字目以降」は、今回紹介した他の操作と違って名詞手順というものであり、他の操作とは使い方が異なる。
今回は、代入操作と組み合わせた形で紹介している。

提出コード

コンソールから受け取って【a:整数】とする
コンソールから受け取って【数値2個】とする
コンソールから受け取って【s】とする

数値2個から「 」を探して【空白位置】とする
数値2個の先頭から(空白位置-1)文字取り出して【b:整数】とする
【c:整数】は、数値2個の(空白位置+1)文字目以降

【和】は、a+b+c
「[和] [s]」をコンソールへ表示して改行する

提出 #54697193 - AtCoder Beginners Selection

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?