LoginSignup
0
0

More than 5 years have passed since last update.

はじめてのyukicoder vol.2

Last updated at Posted at 2018-10-22

今回でチュートリアル問題を解いてみよう!が終わりました

全部で五問しかない上に既に三問も解いているので、

昨日一日だけで終わらせようと思えば終わらせられましたね・・・

しかも、今回のは入力の形式が違うだけで実質同じ問題というネ

それでも手こずるという体たらく

じゃーNo.9008からどーぞ

No.9008

9008.f90
integer(8) A
integer(8),allocatable :: x(:)
read(*,*) n
allocate (x(n))
read(*,*) (x(m),m=1,n)
A=0
do m=1,n
   A=A+x(m)
end do
write(*,*) A
end

言われた内容も単純、言っていることも単純、なのに手こずりました

というのも、私Fortranで横並び入力ほぼほぼしたことないんですよね・・・

それが仇になって非常に手こずりました

最初、反復で書いてたんですが一行の入力ができなくて(当たり前)、

次に反復やめて"read(,) x(n)"にしてたんですが、このままだとx(n)に数値代入されるので合計値が狂う

結果的に反復形?で何とかごまかしました

あとはIntegerを入れ忘れてチェックに引っかかるといういつものミスくらいでした


この問題を私以外にFortranで解いている人がいたんですが、

私のより全然綺麗で最もっと精進しないとなぁーと思いました、まる

No.9009

9009.f90
integer(8) A
integer(8),allocatable :: x(:)
read(*,*) n
allocate (x(n))
A=0
do i=1,n
    read(*,*) x(i)
    A = A + x(i)
end do

write(*,*) A
end

こっちはいつもの縦入力で非常にえがった

特にいうことはないです

次回は★1の問題をメインに解いていきまーす

以上!

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