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

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

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

for文は、様々なプログラミング言語で使われている制御構造です。for文に定義している条件から外れるまで、for文内の命令文を繰り返し実行します。

Q&A

解決済

2回答

5538閲覧

for文を使った累乗の問題 C言語

teade

総合スコア5

for

for文は、様々なプログラミング言語で使われている制御構造です。for文に定義している条件から外れるまで、for文内の命令文を繰り返し実行します。

0グッド

0クリップ

投稿2020/06/11 09:51

編集2020/06/11 10:09

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

C言語

1ソースコード#include <stdio.h> 2 3int main(void) 4{ 5int a, n, i, ans=1; 6 printf("二つの整数をカンマ区切りで入力してください:"); 7 scanf("%d,%d",&a,&n); 8 for (i=1;i<=n;i++){ 9 printf("%dの%d乗は%dです\n",a,n,ans); 10 ans=a*=n; 11 break; 12 } 13} 14 15### 試したこと 16 17キーボードから整数を2つ入力し,先に入力した整数(a)を,後で入力した整数(n)18累乗するプログラムをfor文を使って作成しなさいという問題で 19a=2,n=8のケース、a=2,n=16のケース、a=5 n=3のケースで答えを出したいのですが 2028 乗は,256 です.とならずに28 乗は,1です.となってしまいます 21どの点を修正すればいいでしょうか?

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

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

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

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

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

otn

2020/06/11 10:03

タグがC#になってます。全然別の言語です。
guest

回答2

0

ベストアンサー

色々問題が・・・・・
まず、ソースコードはエディターにある<code>を使って書くときれいに見えるので、回答しやすいです。

そして、ソースコードの問題点は大きくて3つ。

  1. printfがfor文の中にある。これだと都度printfが出力される。n=16とかだと、16回
  2. ans = a * = n 乗算をしようとしているのはわかりますが、果たしてこの式はどういう意味なのかを小一時間(ry
  3. break;がある。breakはその時点でloopを抜けるという意味なので、このfor文は繰り返し処理せず、すぐに終了します。

以上のこと踏まえて、コードをきれい直すと以下のようになる。

C

1#include <stdio.h> 2 3int main (void) { 4 int a = 0; 5 int n = 0; 6 int ans = 0; 7 8 printf("二つの整数をカンマ区切りで入力してください:"); 9 10 scanf("%d,%d",&a,&n); 11 for ( int i = 1 ; i<=n ;i++){ 12 ans = ans * a; 13 } 14 printf("%dの%d乗は%dです\n",a,n,ans); 15}

投稿2020/06/11 10:14

編集2020/06/11 10:15
Mashiro

総合スコア654

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

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

teade

2020/06/11 10:27

解決できました。ありがとうございます。
guest

0

どの点を修正すればいいでしょうか?

ansan回掛けます。

投稿2020/06/11 10:12

otn

総合スコア84555

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問