#include <stdio.h>
#include <math.h>
int main( ) {
const double K = 3.0 ;
const double L = 12.48 ;
double x, a, b, y, ab;
double denom_b, denom_y;
printf ( "Calculation Results:\n " ) ; printf ( "============================================================\n " ) ;
for ( int i = 1 ; i <= 3 ; i++ ) {
// CASE (switch) для вибору аргументу X
switch ( i) {
case 1 : x = 2.005 ; break ;
case 2 : x = - 0.437 ; break ;
case 3 : x = - 2.47 ; break ;
default : continue ;
}
printf ( "STEP %d | Argument x = %.3f\n " , i
, x
) ;
// 1. Обчислення a та перевірка ділення на 2x
if ( x == 0 ) {
printf ( " [!] Error: Division by zero (x=0). Skipping...\n " ) ; printf ( "------------------------------------------------------------\n " ) ; continue ;
}
// a = tg[sqrt(K)^(K^(1/3))] - 1/(2x)
printf ( " Intermediate a = %.6f\n " , a
) ;
// 2. Обчислення b та перевірка знаменника
denom_b
= pow ( 0.842 , 4 ) * sqrt ( 8 * K
) * cos ( 4 * x
) ;
if ( fabs ( denom_b
) < 1e-12 ) { printf ( " [!] Error: Division by zero in variable 'b'. Skipping...\n " ) ; printf ( "------------------------------------------------------------\n " ) ; continue ;
}
b
= ( sin ( 2 * x
) * L
* pow ( 5.75 , 1.0 / 3.0 ) ) / denom_b
; printf ( " Intermediate b = %.6f\n " , b
) ;
// 3. Обчислення Y (використання IF для вибору гілки)
ab = a * b;
printf ( " Product a*b = %.6f\n " , ab
) ;
if ( ab < 0 ) {
// Гілка 1: (a - 2b) / (2a + 5b)
denom_y = 2 * a + 5 * b;
if ( fabs ( denom_y
) < 1e-12 ) { printf ( " [!] Error: Division by zero in variable 'y' (2a+5b=0).\n " ) ; } else {
y = ( a - 2 * b) / denom_y;
printf ( " RESULT Y = %.6f (Branch: ab < 0)\n " , y
) ; }
} else {
// Гілка 2: sqrt(ab)
// Додаткова перевірка (хоча ab >= 0 за логікою if)
printf ( " RESULT Y = %.6f (Branch: ab >= 0)\n " , y
) ; }
printf ( "------------------------------------------------------------\n " ) ; }
return 0 ;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgppbnQgbWFpbigpIHsKICAgIGNvbnN0IGRvdWJsZSBLID0gMy4wOwogICAgY29uc3QgZG91YmxlIEwgPSAxMi40ODsKICAgIGRvdWJsZSB4LCBhLCBiLCB5LCBhYjsKICAgIGRvdWJsZSBkZW5vbV9iLCBkZW5vbV95OwoKICAgIHByaW50ZigiQ2FsY3VsYXRpb24gUmVzdWx0czpcbiIpOwogICAgcHJpbnRmKCI9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiIpOwoKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IDM7IGkrKykgewogICAgICAgIC8vIENBU0UgKHN3aXRjaCkg0LTQu9GPINCy0LjQsdC+0YDRgyDQsNGA0LPRg9C80LXQvdGC0YMgWAogICAgICAgIHN3aXRjaCAoaSkgewogICAgICAgICAgICBjYXNlIDE6IHggPSAyLjAwNTsgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMjogeCA9IC0wLjQzNzsgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMzogeCA9IC0yLjQ3OyBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDogY29udGludWU7CiAgICAgICAgfQoKICAgICAgICBwcmludGYoIlNURVAgJWQgfCBBcmd1bWVudCB4ID0gJS4zZlxuIiwgaSwgeCk7CgogICAgICAgIC8vIDEuINCe0LHRh9C40YHQu9C10L3QvdGPIGEg0YLQsCDQv9C10YDQtdCy0ZbRgNC60LAg0LTRltC70LXQvdC90Y8g0L3QsCAyeAogICAgICAgIGlmICh4ID09IDApIHsKICAgICAgICAgICAgcHJpbnRmKCIgIFshXSBFcnJvcjogRGl2aXNpb24gYnkgemVybyAoeD0wKS4gU2tpcHBpbmcuLi5cbiIpOwogICAgICAgICAgICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBhID0gdGdbc3FydChLKV4oS14oMS8zKSldIC0gMS8oMngpCiAgICAgICAgYSA9IHRhbihwb3coc3FydChLKSwgcG93KEssIDEuMC8zLjApKSkgLSAxLjAvKDIuMCp4KTsKICAgICAgICBwcmludGYoIiAgSW50ZXJtZWRpYXRlIGEgPSAlLjZmXG4iLCBhKTsKCiAgICAgICAgLy8gMi4g0J7QsdGH0LjRgdC70LXQvdC90Y8gYiDRgtCwINC/0LXRgNC10LLRltGA0LrQsCDQt9C90LDQvNC10L3QvdC40LrQsAogICAgICAgIGRlbm9tX2IgPSBwb3coMC44NDIsIDQpICogc3FydCg4ICogSykgKiBjb3MoNCAqIHgpOwogICAgICAgIAogICAgICAgIGlmIChmYWJzKGRlbm9tX2IpIDwgMWUtMTIpIHsKICAgICAgICAgICAgcHJpbnRmKCIgIFshXSBFcnJvcjogRGl2aXNpb24gYnkgemVybyBpbiB2YXJpYWJsZSAnYicuIFNraXBwaW5nLi4uXG4iKTsKICAgICAgICAgICAgcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CgogICAgICAgIGIgPSAoc2luKDIgKiB4KSAqIEwgKiBwb3coNS43NSwgMS4wLzMuMCkpIC8gZGVub21fYjsKICAgICAgICBwcmludGYoIiAgSW50ZXJtZWRpYXRlIGIgPSAlLjZmXG4iLCBiKTsKCiAgICAgICAgLy8gMy4g0J7QsdGH0LjRgdC70LXQvdC90Y8gWSAo0LLQuNC60L7RgNC40YHRgtCw0L3QvdGPIElGINC00LvRjyDQstC40LHQvtGA0YMg0LPRltC70LrQuCkKICAgICAgICBhYiA9IGEgKiBiOwogICAgICAgIHByaW50ZigiICBQcm9kdWN0IGEqYiAgID0gJS42ZlxuIiwgYWIpOwoKICAgICAgICBpZiAoYWIgPCAwKSB7CiAgICAgICAgICAgIC8vINCT0ZbQu9C60LAgMTogKGEgLSAyYikgLyAoMmEgKyA1YikKICAgICAgICAgICAgZGVub21feSA9IDIgKiBhICsgNSAqIGI7CiAgICAgICAgICAgIGlmIChmYWJzKGRlbm9tX3kpIDwgMWUtMTIpIHsKICAgICAgICAgICAgICAgIHByaW50ZigiICBbIV0gRXJyb3I6IERpdmlzaW9uIGJ5IHplcm8gaW4gdmFyaWFibGUgJ3knICgyYSs1Yj0wKS5cbiIpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgeSA9IChhIC0gMiAqIGIpIC8gZGVub21feTsKICAgICAgICAgICAgICAgIHByaW50ZigiICBSRVNVTFQgWSAgICAgID0gJS42ZiAoQnJhbmNoOiBhYiA8IDApXG4iLCB5KTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vINCT0ZbQu9C60LAgMjogc3FydChhYikKICAgICAgICAgICAgLy8g0JTQvtC00LDRgtC60L7QstCwINC/0LXRgNC10LLRltGA0LrQsCAo0YXQvtGH0LAgYWIgPj0gMCDQt9CwINC70L7Qs9GW0LrQvtGOIGlmKQogICAgICAgICAgICB5ID0gc3FydChhYik7CiAgICAgICAgICAgIHByaW50ZigiICBSRVNVTFQgWSAgICAgID0gJS42ZiAoQnJhbmNoOiBhYiA+PSAwKVxuIiwgeSk7CiAgICAgICAgfQoKICAgICAgICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=