цикл должен выполняться до 8, включительно, но выполняется лишь до 6. Суть задачи не важна, так как она сделана, важен сам процесс автоматизации
#include "pch.h"
#include "iostream"
#include "cmath"
#include "fstream"
#include "cctype"
#include "string"
float x, b, d, m, h, f, a, k, d1;
int n = 1, s = 1, d2;
char i;
using namespace std;
float func(float x)
{
f = (1 + x) / (sqrt(x));
return f;
}
void main()
{
setlocale(LC_ALL, "Rus");
while (s <= 9)
{
do
{
a = 4.0f;
b = 9.0f;
h = 0.0f;
for (k = 1; k <= n - 1; k++)
{
m = func(a + k * ((b - a) / n));
h += m;
}
d = (h + (func(a) + func(b)) / 2) * ((b - a) / n);
d1 = d * pow(10, (s));
d2 = (int)d1 % 10;
for ( i = 1; i <= s; i++)
{
int d3 = pow(10, i);
if ((int)d1 / (d3/10) % 10 != 6)
{
d2 = 5;
}
}
n++;
} while (d2 != 6);
cout << "количество отрезков: " << n << endl;
cout << "Число = ";
printf("%.100f", d);
cout << endl;
cout << "количество шестерок после запятой: " << s++ << endl;
cout << endl;
}
cin.get();
}
Дело как раз в сути задачи - она при s==7
зацикливается...
Убедитесь сами, добавив, например, строку
cout << "d2 = " << d2 << endl;
} while (d2 != 6);
Если вы поясните, что именно вы считаете ("суть задачи"), можно будет поговорить о том, как этого избежать.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
В чем здесь проблема? Почему n всегда равно либо 100 и 100, либо 200 и 200, как ни крути
Как мне сделать так, чтобы размер матрицы и значение её элементов я вводил сам (то есть динамически)?
Не смог найти библиотеку, которая позволяет заполнить матрицу по спирали, например так: