Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Richie_Bolat
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 12
#1

Составить программу вычисления степени числа А с натуральным показателем N . (Записать варианты программы с 3 видами циклов: for, while, do…while) - C++

12.03.2014, 20:26. Просмотров 677. Ответов 7
Метки нет (Все метки)

Составить программу вычисления степени числа А с натуральным показателем N . (Записать варианты программы с 3 видами циклов: for, while, do…while)

Просто нужна помошь, начал делать(с циклом for), но не уверен праильно-ли...
проверьте, пожалуйста, правильно ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
///
 
#include<stdio.h>
#include<math.h>
#include<iostream>
 
int main()
 {
          int a,n, i;
          float S;
          printf("\n vvedite  a \n ");
          scanf("%d",&a);
          printf("\n vvedite  n \n ");
          scanf("%d",&n);
          
         
          for (i=0; i<=n; i++)
             {
             S=pow(a,i);
             }
             
          printf ("\n  S=%f", S);
 
  system("PAUSE");
 return 0;
 }
Добавлено через 2 минуты
while

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
///
 
#include<stdio.h>
#include<math.h>
#include<iostream>
 
int main()
 {
          int a,n, i;
          float S;
          printf("\n vvedite  a \n ");
          scanf("%d",&a);
          printf("\n vvedite  n \n ");
          scanf("%d",&n);
          
         while(i<=n)
         {
         i++;
         S=pow(a,i);      
         }
         
          printf ("\n  S=%f", S);
 
  system("PAUSE");
 return 0;
 }
Добавлено через 1 минуту
do while

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
///
 
#include<stdio.h>
#include<math.h>
#include<iostream>
 
int main()
 {
          int a,n, i;
          float S;
          printf("\n vvedite  a \n ");
          scanf("%d",&a);
          printf("\n vvedite  n \n ");
          scanf("%d",&n);
          
         do
         {
         i++;
         S=pow(a,i);      
         }
         while(i<=n);
          printf ("\n  S=%f", S);
 
  system("PAUSE");
 return 0;
 }
Добавлено через 1 минуту
ошибкка...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.03.2014, 20:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Составить программу вычисления степени числа А с натуральным показателем N . (Записать варианты программы с 3 видами циклов: for, while, do…while) (C++):

Написать программу нахождения степени числа а с натуральным показателем n - C++
Написать программу нахождения степени числа а с натуральным показателем n.

Вычисление степени числа А с натуральным показателем n - C++
1. Составьте программу вычисления степени числа А с натуральным показателем n. (записать варианты программы с разными видами циклов...

Создать функцию вычисления степени числа с показателем (без использования функции pow) - C++
Создать функцию вычисления степени натурального числа с натуральным показателем (без использования функции pow) и вычислить с ее помощью...

Составьте программу вычисления степени числа a с натуральным показателем n. (Записать варианты программы с разными видами циклов while, repeat, for). - Pascal
Составьте программу вычисления степени числа a с натуральным показателем n. (Записать варианты программы с разными видами циклов while,...

Написать программу вычисления n!=1*2*3*...*n. (Записать варианты программы с разными видами циклов while, repeat, for). - Java SE
Написать программу вычисления n!=1*2*3*...*n. (Записать варианты программы с разными видами циклов while, repeat, for).

Написать программу вычисления n!=1*2*3*...*n. (Записать варианты программы с разными видами циклов while, repeat, for). - Pascal ABC
Написать программу вычисления n!=1*2*3*...*n. (Записать варианты программы с разными видами циклов while, repeat, for).

7
jurok_85
241 / 225 / 78
Регистрация: 21.02.2013
Сообщений: 520
Завершенные тесты: 1
12.03.2014, 20:38 #2
в циклах while и do while у вас i должно быть изначально равно нулю
C++
1
int a,n, i = 0;
, а то оно будет содержать мусорное значение
1
fishec
119 / 119 / 30
Регистрация: 07.09.2013
Сообщений: 338
12.03.2014, 20:46 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main(){
    int n, i=1;
    double S=1.0, a;
    printf("\n vvedite  a \n ");
    scanf("%lf", &a);
    printf("\n vvedite  n \n ");
    scanf("%d", &n);
    for (i = 1; i <= n; i++)
        S *= a;
    printf("\n  S=%f", S);
    system("pause");
    return 0;
}
Добавлено через 43 секунды
Смысл задания в том, чтобы не использовать pow. Иначе можно просто вывести pow(a,n).

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main(){
    int n, i=1;
    double S=1.0, a;
    printf("\n vvedite  a \n ");
    scanf("%lf", &a);
    printf("\n vvedite  n \n ");
    scanf("%d", &n);
    while (i++<=n)
        S *= a;
    printf("\n  S=%f", S);
    system("pause");
    return 0;
}
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main(){
    int n, i=1;
    double S=1.0, a;
    printf("\n vvedite  a \n ");
    scanf("%lf", &a);
    printf("\n vvedite  n \n ");
    scanf("%d", &n);
    do
        S *= a;
    while (i++ < n);
    printf("\n  S=%f", S);
    system("pause");
    return 0;
}
2
Richie_Bolat
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 12
12.03.2014, 20:57  [ТС] #4
fishec, Извините, но я не могу понять s*=a в теле цикла, мы же должны не умножить, а возвезти в степень или я что-то недопонимаю?
0
Байт
Эксперт C
16545 / 10815 / 1639
Регистрация: 24.12.2010
Сообщений: 20,864
12.03.2014, 21:11 #5
Цитата Сообщение от Richie_Bolat Посмотреть сообщение
я что-то недопонимаю?
Именно
Возвести в степень эн, это значит умножить само на себя эн раз.
0
fishec
119 / 119 / 30
Регистрация: 07.09.2013
Сообщений: 338
12.03.2014, 21:20 #6
Цитата Сообщение от Richie_Bolat Посмотреть сообщение
но я не могу понять s*=a
s*=a эквивалентно s=s*a. Сначала s=1. После первого шага цикла s=1*a; после второго s=s*a = 1*a*a;после третьего s=1*a*a*a, и так далее. После n-ного шага s=a*a*...*a (n раз), что и есть a в степени n.
1
Catstail
Модератор
22831 / 11197 / 1812
Регистрация: 12.02.2012
Сообщений: 18,439
12.03.2014, 21:38 #7
Для разнообразия - совсем без циклов:

C++
1
2
3
4
5
6
7
double myPow(double x, int n)
{
    if (n == 0)
      return 1.0;
    else
      return x*myPow(x,n-1);
}
1
Richie_Bolat
0 / 0 / 0
Регистрация: 20.02.2014
Сообщений: 12
12.03.2014, 23:34  [ТС] #8
fishec, спасибо большое за объяснение! эх, если вам не трудно, то не могли бы вы мне объяснить также про массивы или посоветовать литературу)) просто мне нужно сдать несколько лабараторных работ по циклам,массивам, функциям и указателям.. а я все на массивах застрял. нет, ну теорию я вроде понял, вот на практике...всё задачи никак не получается решить правильно..Спасибо, я был бы вам очень признателен!
0
12.03.2014, 23:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2014, 23:34
Привет! Вот еще темы с ответами:

Составьте программу вычисления степени числа, а с натуральным показателем n - QBasic
Циклический оператор Составьте программу вычисления степени числа, а с натуральным показателем n. (Записать варианты...

Составьте программу вычисления степени числа а с натуральным показателем n - Turbo Pascal
Составьте программу вычисления степени числа а с натуральным показателем n

Составьте программу вычисления степени числа, а с натуральным показателем n - Pascal ABC
Циклический оператор Составьте программу вычисления степени числа, а с натуральным показателем n. (Записать варианты программы...

Составьте программу вычисления степени числа а с натуральным показателем n - Delphi
Ребят есть задание, нужно написать программу в делфи, а в нем я не разбираюсь, помогите пожалуйста, вообщем вот задание


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru