0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

AtCoderログ:0098 - ABC 216 A

Last updated at Posted at 2021-08-31

問題

問題文

実数 $X.Y$ が与えられます。ただし $Y$ はちょうど $1$ 桁です。
・$0 \le Y \le 2$ ならば、$X-$
・$3 \le Y \le 6$ ならば、$X$
・$7 \le Y \le 9$ ならば、$X+$
と出力してください。

制約

・$1 \le X \le 15$
・$0 \le Y \le 9$
・$X$ と $Y$ は整数

回答

回答1 (AC)

小数は小数点以下1桁なので、10倍すれば整数演算に持ち込むことが出来ます。コードは以下のようになりました。

abc216a-1.cpp
#include <bits/stdc++.h>
using namespace std;

int main() {
  float r;
  cin >> r;

  int z, x, y;
  z = (int)(r*10);
  x = z/10;
  y = z%10;

  string add = "";
  if ( y<=2 ) {
    add = "-";
  } else if ( y>=7 ) {
    add = "+";
  }

  cout << x << add << endl;
}

調べたこと

AtCoder の解説公式解説

string 型変数を使った回答が紹介されていました。

リンク

前後の記事

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?