Вычисление выражения: Перевести из while в do while - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Помогите перевести цикл из while в do while. Когда перевожу, то функция выполняется, но значение выдает не такое, как при цикле while.
Листинг программы
  1. #include <conio.h>
  2. #include <iostream.h>
  3. #include <stdio.h>
  4. #include <math.h>
  5. main ()
  6. { clrscr();
  7. float P=1, S=0, R, i=2.5, j=4.5;
  8. while (i>-4.5)
  9. {
  10. P=P*pow((i+3),3);
  11. while(j<7.5)
  12. {
  13. S=S+2*(i-j);
  14. j+=0.5;
  15. };
  16. R=P+S; i-=0.5;
  17. }
  18. cout<<"REZ="<<R;
  19. getch();
  20. return 0;
  21. }
Я пытался переделать так:
Листинг программы
  1. do
  2. {
  3. P=P*pow((i+3),3);
  4. do
  5. { S=S+2*(i-j); j+=0.5;}
  6. while (j<7.5);
  7. R=P+S;
  8. i-=0.5;
  9. }
  10. while (i>-4.5);
  11. cout<<"REZ="<<R;
ответ должен выходить -39

Решение задачи: «Вычисление выражения: Перевести из while в do while»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. int main(int argc, char* argv[])
  5. {
  6.    int i, j;
  7.    double sum, mul;
  8.    i = 25;
  9.    mul = 1.0;
  10.    while (i >= -45)
  11.    {
  12.       sum = 0.0;
  13.       j = 45;
  14.       while (j < 75)
  15.       {
  16.          sum += 2.0 *(i - j)/10.0;
  17.          j += 5;
  18.       }
  19.       mul *= pow((i/10.0 + 3.0), 3) + sum;
  20.       i -= 5;
  21.    }
  22.  
  23.    printf("%10.3f\n", mul);
  24.    return 0;
  25. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы