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

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

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

Сделать цикл где начальное, конечное значение и шаг вводятся с клавиатуры - C++

22.10.2013, 23:02. Просмотров 544. Ответов 2
Метки нет (Все метки)

Условие(смотри вложение)
Необходимо составить цикл с постусловием где начальное и конечное значение, а так же шаг вводятся с клавиатуры
вот код:
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main()
{
 float a,e,a1,a2,a3,x,z,r;
 printf("Enter E:\n");
 scanf("%f",&e);
 printf("Enter start value of A\n");
 scanf("%f",&a1);
 printf("Enter end value of A\n");
 scanf("%f",&a2);
 printf("Enter step of A\n");
 scanf("%f",&a3);
 a=a1;  
  do
  {
    if (e<=9)
       {
       x=(cos(e-3));
       } 
       else 
       {
        if ((11*(e-(pow(a,2))))==0&&e>9)
             {
             printf(" \ne=%6.2f   a=%6.2f ",e,a);
             printf ("  X = Error");
             printf ("  Z = Error");
             printf ("  R = Error");
             goto m1;
             }
            else 
            if ((11*(e-(pow(a,2))))!=0&&e>9)
            {
            x=e-(a/(11*(e-(pow(a,2)))));
            }  
          }
                   if (x>0)
                   {
                   z=(log10(x)*log10(x))/(sqrt(x*x+10));
                   }      
                       else
                       {
                         if ((e-1.3*a)<0&&x<=0)
                         {
                         printf(" \ne =%6.2f   a =%6.2f   x =%8.2f ",e,a,x);
                         printf ("  Z = Error");
                         printf ("  R = Error");
                         goto m1;
                         }
                         else    
                          if ((e-1.3*a)>=0&&x<=0)
                         {
                          z=sin(sqrt(e-1.3*a));
                         }  
                    }            
 r=z*z+x-a*e*x;
 printf(" \ne =%6.2f   a =%6.2f   x =%8.2f   z =%5.2f   r =%5.2f",e,a,x,z,r);
 m1:
 a=a+a3;
 }
 while(a<=a2+(a3/100));
 getch();
 return 0;
}
проблема в том что когда я ввожу следующие значения:
E=100 9<=a<=11 Δa=0.1
при значении a=10 показывает такое(смотри вложение)
как с этим бороться ?


П.С. за код прошу не ругать так как я пока только на первом курсе и только начал учится))
0
Миниатюры
Сделать цикл где начальное, конечное значение и шаг вводятся с клавиатуры   Сделать цикл где начальное, конечное значение и шаг вводятся с клавиатуры  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2013, 23:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сделать цикл где начальное, конечное значение и шаг вводятся с клавиатуры (C++):

Протабулируйте функции. Отрезок и шаг вводятся с клавиатуры - C++
ln x + 1/x

Протабулируйте функции. Отрезок и шаг вводятся с клавиатуры: sh x-x+1 - C++
Протабулируйте функции. Отрезок и шаг вводятся с клавиатуры: sh x-x+1

Найти начальное и конечное числа - C++
Ребята помогите пожалуйста с этим заданием ! Нет идей как можно решить . Петя и Вася готовились к аттестации по теме &quot;Умножение&quot;. Петя...

Найти начальное и конечное числа - C++ - C++
Ребята помогите пожалуйста с этим заданием ! Нет идей как можно решить . Петя и Вася готовились к аттестации по теме &quot;Умножение&quot;. Петя...

3. Найти сумму элементов с k1-го по k2-ой, где k1 и k2 вводятся с клавиатуры. Сделайте проверку корректности их ввода. - C++
3. Найти сумму элементов с k1-го по k2-ой, где k1 и k2 вводятся с клавиатуры. Сделайте проверку корректности их ввода.

Вычислить выражение (значение всех переменных вводятся с клавиатуры) - C++
Помогите создать программу)

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
TheAlexLyt
1 / 1 / 0
Регистрация: 22.10.2013
Сообщений: 10
23.10.2013, 21:36  [ТС] #2
Я понял в чем была моя ошибка! суть в том что у меня много чисел после запятой (смотри вложение), отсюда следует вопрос: как мне округлить число до сотых?
0
Миниатюры
Сделать цикл где начальное, конечное значение и шаг вводятся с клавиатуры  
castaway
Эксперт С++
4884 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
23.10.2013, 21:40 #3
Цитата Сообщение от TheAlexLyt Посмотреть сообщение
отсюда следует вопрос: как мне округлить число до сотых?
(int)(value * 100) / 100.;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 21:40
Привет! Вот еще темы с ответами:

Одномерные массивы (векторы): вычислить и напечатать значения функции Y= Ak2 + Ak - sin Ak, где элементы массива А вводятся с клавиатуры - C++
Вычислить и напечатать значения функции Y= Ak2 + Ak - sin Ak где элементы массива А вводятся с клавиатуры .

Вычислить значение у, где. Значение переменной х введите с клавиатуры - C++
Вычислить значение у, где. Значение переменной х введите с клавиатуры.

помогите сделать цикл,чтобы выводило ряд Фибоначии до определенного числа N которое я ввела с клавиатуры. - C++
есть у меня код рекурсии по нахождению числа фибоначчи за номером. помогите сделать цикл,чтобы выводило ряд Фибоначии до определенного...

Шаг компиляции, шаг компоновки, и шаг запуска - C++
Что происходит на шаге компиляции, шаге компоновки, и шаге запуска, с переменными и функциями. что происходит при встрече в коде...


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

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

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