Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <conio.h>
- #include <stdio.h>
- #include <cmath>
- using namespace std;
- int main() {
- setlocale(LC_ALL, "Russian");
- double
- a, b, c, //постоянные аргументы функции
- Xstart, //начальное значение аргумента х
- Xend, //конечное значение аргумента х
- dX, //шаг изменения аргумента х
- F; //значение функции
- /* ввод исходных данных */
- printf("Введите a, b, c, Xstart, Xend, dX \n");
- scanf("%lf %lf %lf %lf %lf %lf", &a, &b, &c, &Xstart, &Xend, &dX);
- /* щапка таблицы */
- printf(" ----------------------- \n");
- printf("| X | F | \n");
- printf(" ----------------------- \n");
- /* вычисления */
- for(double x = Xstart; x <= Xend; x += dX) {
- bool mistake = false; //наличие ошибки деления на ноль
- if(x < 0.6 && b + c != 0)
- F = a * pow(x, 3) + pow(b, 2) + c;
- else if(x > 0.6 && b + c == 0)
- x - c == 0 ?
- mistake = true :
- F = (x - a) / (x - c);
- else
- c == 0 || a == 0 ?
- mistake = true :
- F = (x / c) + (x / a);
- if(mistake) {
- printf("|%10.3lf |%s| \n", x, "Нет решений");
- continue;
- }
- if( ( (int(a) | int(b)) & int(c) ) != 0 )
- printf("|%10.3lf |%10.5lf | \n", x, F);
- else
- printf("|%10.3lf |%10d | \n", x, (int)F);
- }
- /* подвал таблицы */
- printf(" ----------------------- \n");
- getch();
- return 0;
- }
Add Comment
Please, Sign In to add comment