質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

Q&A

解決済

2回答

783閲覧

アルゴリズムで経過時間の順次処理がしたいけどできません。

kazu-.

総合スコア34

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

アルゴリズム

アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

0グッド

0クリップ

投稿2018/09/26 10:08

フローチャートで順次処理で開始時刻(時と分)を入力し、経過時間(h時間m分)を出力するという専門の問題なのですが、間違いがあり返却されてしまいます。
フローチャートの書き方は以下の通りです。
開始

h、m、H2、m2 整数

h、m、H2、m2 に入力

X←h*60

X←X+m

y←H2*60

y←y+m2

X←yーX

h←x/60

m←x%60

h、mを出力

終了

プログラム学習を始めて半年でまだあまり理解してないので不安です。
これが今僕が考えたフローチャートです。間違えてる点があったら指摘お願いします。答えでも構わないです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

a_saitoh

2018/09/27 07:05 編集

答えがマイナスになる場合はどう出力すべきか規定はありますか?あるいはそれは考えなくていいと課題文にありますか?
guest

回答2

0

大文字小文字や宣言以外の要素を考えるなら…

フローチャートを書かせるという問題(?)で間違いとされている,ということから想像するに,
何か問題文で指定されている要素が抜け落ちているのではないでしょうか.

  • 大小関係:23:00開始,1:00終了 みたいな場合の扱い方
  • 範囲外な入力値に対するチェック処理と対応方法
  • 出力形式:経過時間が0時間2分とかいう場合には,「2分」とだけ出力する,みたいな.

等.

投稿2018/09/27 05:40

fana

総合スコア11663

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

フローチャートはあっているように思います。
以下はフローチャートに従い、Python で作成した例です。

python

1h1, m1 = 10, 30 # 開始時刻 2h2, m2 = 20, 10 # 終了時刻 3 4start = h1 * 60 + m1 5end = h2 * 60 + m2 6assert end >= start 7 8elapsed = end - start 9 10h3, m3 = elapsed // 60, elapsed % 60 11# h3, m3 = divmod(elapsed, 60) 12print('{:02}:{:02} ~ {:02}:{:02}, elapsed: {:02}:{:02}'.format( 13 h1, m1, h2, m2, h3, m3))
10:30 ~ 20:10, elapsed: 09:40

フローチャートで気になる点

X←yーXx←yーX の間違いでしょうか?
変数名が x, y 等のアルファベットだと紛らわしいので、もう少し別の名前を付けたほうがいい気がします。

投稿2018/09/26 10:58

tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kazu-.

2018/09/26 11:01

大文字小文字は気にしないでください。大文字でも小文字でも全く同じ変数です。次からはもっとわかりやすい変数名にしようと思います。
tiitoi

2018/09/26 11:12

使用言語にもよりますが、主要なプログラミング言語は大文字小文字は区別するので、その場合 x と X は違う変数名として解釈されます。こちらの質問に書き写された際の誤植であれば問題ないですが、元のフローチャートもそうなっていた場合、間違いと判断される可能性があります。 「間違いがあり返却された」とのことですが、その点以外はフローチャートに問題があるようには思えないです。
swordone

2018/09/26 14:28

x,yの定義をしていない(整数など)のも問題では?
kazu-.

2018/09/26 14:30

x、yの定義は小さい字ながらしています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問