![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?a65a0e2)
Fortran90に関する問題です。
「正の整数mを正の整数nで割った余りrを求める手順を、組み込み関数MOD(m,n)を用いずに、単一の算術式で表せ」
このプログラム文を以下のように作成しました。ファイル名は「amari.f90」にしました。
INTEGER::m,n,f,r
REAL::a,k
PRINT*,'Input 正の整数'
READ*,m,n
a=REAL(m)
k=a/n
f=INT(k)
IF(m>0,n>0) THEN
r=m-(f*n)
PRINT*,'余り=',r
END IF
END
そして、Cygwin画面上で
gfortran -o amari.exe amari.f90と打って、コンパイルしようとしたら以下のようなエラー文が出ました。
amari.f90:8.6:
IF(m>0,n>0) THEN
1
Error: Syntax error in IF-expression at (1)
amari.f90:11.3:
END IF
1
Error: Expecting END PROGRAM statement at (1)
プログラム文のどこの箇所が間違っているのかを教えていただけませんか?お願いします。
No.1ベストアンサー
- 回答日時:
FORTRAN77で終わってしまったものなので、FORTRAN90仁対しては不正確な知識で回答しますが
IF(m>0,n>0) THEN
この文、比較式の結合条件がわかりませんね、m>0かつn>0なのか、m>0またはn>0んのかコンパイラは判断できません。
普通は、if(m>0 .and. n>0)など、論理演算子を使って条件式を結合するように書きます。
ところで、このプログラム、ちゃんと動きませんよ、nに0がセットされたら、k=a/nで除算例外が発生します。
それに、わざわざrealに変換する意味が不明(というより不要)です。すべて、整数の演算で処理すればいいはずです。
言われたとおりに以下のように訂正したら、上手くいきました。
ありがとうございました。
INTEGER::m,n,k,r
PRINT*,'Input 正の整数'
READ*,m,n
k=m/n
IF(m>0.AND.n>0) THEN
r=m-(k*n)
PRINT*,'余り=',r
END IF
END
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php エラー 2 2022/10/23 16:43
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- Visual Basic(VBA) VBA 改行コードの取り方 1 2022/03/22 14:14
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/02/02 09:25
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
いちばん失敗した人決定戦
あなたの「告白」での大失敗を教えてください。
-
あなたの「プチ贅沢」はなんですか?
お仕事や勉強などを頑張った自分へのご褒美としてやっている「プチ贅沢」があったら教えてください。
-
AIツールの活用方法を教えて
みなさんは普段どのような場面でAIツール(ChatGPTなど)を活用していますか?
-
【お題】斜め上を行くスキー場にありがちなこと
運営も客も一流を通り越して斜め上を行くスキー場にありがちなことを教えて下さい。
-
fortranでプログラムを実行するとEnd of fileと表示されてしまいます
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Sublime Text 3でのFortranプロ...
-
360度を超える角度
-
ProC 固定SQLでNULLってどう表...
-
COBOLのピリオド
-
プログラミングソフトパスカル...
-
N88basicを用いたGPIB制御
-
あるプログラムのコマンドライ...
-
VBAで仕様書は書きますか?
-
正しい五十音順について
-
VBAにてメール作成した際、一部...
-
65536は2の何乗なのでしょうか?
-
EXCELなどで「返す」という表現
-
Excelで4096点以上のFFTの方法
-
Vba UserFormを前面に出す方法...
-
バッチファイルでUSB挿入時に実行
-
ABAQUS ユーザーサブルーチン...
-
VBAで関数をつくる
-
PICマイコンのコピー(クローン...
-
C++ で、「)」が必要 というエ...
-
内税の計算式
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
変数の値が勝手に変化する原因
-
【JAVA】数字をひし形に出力す...
-
360度を超える角度
-
プログラミングの問題です。
-
COBOLのピリオド
-
Matlabについて質問2
-
ProC 固定SQLでNULLってどう表...
-
fortran if文
-
3つの整数のうち奇数のみを表示...
-
4桁の数値を逆に表示されるプ...
-
Sublime Text 3でのFortranプロ...
-
JCLの基本について教えてください
-
c言語のプログラミング 2つの整...
-
Fortran90についての質問です。
-
Tiny Basicのプログラムです。。
-
素数を探すプログラム…。
-
Cプログラミング
-
3次関数を作るプログラム
-
Visual Basic 三辺の長さ? ...
-
CommonLispでハノイの塔の円盤...
おすすめ情報