Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "pch.h"
- #include <iostream>
- #include <math.h>
- using namespace std;
- double functionu(double y, float u) {
- double z, g;
- if ((0<y)&&(y<15))
- z = y;
- else {
- z = 2;
- }
- g = pow((sqrt(z)-z),2);
- u = u + g;
- return u;
- }
- double functiony(double a, double b, int i) {
- double y;
- if (abs(a*b) <= 1)
- y = 2*pow((a*b),i)+pow(i,2)-a / 2*(pow(a,2)+pow(b,2))+i;
- else
- y = 2*a*b+(pow((-1),i))*(a-i)/ 2 * (pow(a, 2) + pow(b, 2));
- return y;
- }
- void ashipka(double n, double amax, double amin, double bmax, double bmin, double da, double db) {
- if (n != round(n)) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"n\" должно быть целым числом \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- if (n < 1) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"n\" должно быть больше \"1\" \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- if (amax < amin) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"amax\" должно быть больше \"amin\" \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- if (bmax < bmin) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"bmax\" должно быть больше \"bmin\" \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- if (da <= 0) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"da\" должно быть больше \"0\" \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- if (db <= 0) {
- printf("***********************************************************************************************************************\n");
- printf(" __________________________________________________________________________");
- printf("\n\n Некорректно введены данные!!! \"db\" должно быть больше \"0\" \n");
- printf(" __________________________________________________________________________\n\n");
- printf("***********************************************************************************************************************\n");
- exit(0);
- }
- }
- void data_calculation() {
- double a, b, amin, amax, bmin, bmax, da, db, n;
- printf(" Введите amax, amin, bmax, bmin, da, db, n\n");
- printf(" amax=");
- cin >> amax;
- printf(" amin=");
- cin >> amin;
- printf(" bmax=");
- cin >> bmax;
- printf(" bmin=");
- cin >> bmin;
- printf(" da=");
- cin >> da;
- printf(" db=");
- cin >> db;
- printf(" n=");
- cin >> n;
- if (n != round(n) || n < 1 || (amax < amin) || (bmax < bmin) || da <= 0 || db <= 0) {
- ashipka(n, amax, amin, bmax, bmin, da, db);
- }
- else {
- double* y;
- double u = 0;
- y = new double[n + 1];
- printf("***********************************************************************************************************************\n");
- printf(" ______________________________________________________________");
- for (float b = bmin; b <= bmax; b += db)
- for (float a = amin; a <= amax; a += da)
- {
- u = 0;
- for (int i = 1; i <= n; i++) {
- y[i] = functiony(a, b, i);
- u = functionu(y[i], u);
- printf("\n | a=%8.2f | b=%8.2f | i=%2i | y[i]=%8.2f |", a, b, i, y[i]);
- }
- printf("u=%8.4f |\n", u);
- printf(" |____________________________________________________________|");
- }
- printf("\n***********************************************************************************************************************\n");
- delete[] y;
- }
- }
- int main()
- {
- setlocale(LC_CTYPE, "rus");
- data_calculation();
- printf("Хотите продолжить вычисления, если да то напишите \"1\", если нет любую друуою цифру\n");
- int x;
- cin >> x;
- while (x == 1) {
- data_calculation();
- printf("Хотите продолжить вычисления, если да то напишите \"1\", если нет любую друуою цифру\n");
- cin >> x;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement