Нулевые результаты при вычислении выражения - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всем добрый день. Подскажите, пожалуйста, почему прога не считает а выводит нулевые результаты?
#include <stdio.h>
#include <stdlib.h>
struct chisla
{
    int a;
    int b;
    int c;
    int d;
}comp;

int main()
{
//--------------------FIRST PAIR--------------------//
    printf("\n\n\tEnter first pair (a+bi).");
    printf("\n\tEnter a: ");
    scanf("%d", &comp.a);
    printf("\n\tEnter b: ");
    scanf("%d", &comp.b);
//---------------------SECOND PAIR--------------------//
    printf("\n\n\tEnter first pair (c+di).");
    printf("\n\tEnter c: ");
    scanf("%d", &comp.c);
    printf("\n\tEnter d: ");
    scanf("%d", &comp.d);
//--------------------DIVIDEND----------------------//
    float di[2];
    
    di[0]=((comp.a*comp.c+comp.b*comp.d) / (comp.c * comp.c + comp.d * comp.d));
    di[1]=((comp.b*comp.c-comp.a*comp.d) / (comp.c * comp.c + comp.d * comp.d));
    
    if(di[1]>0)
    {
        printf("\n\n\tDividend is: %0.2f+%0.2fi", di[0], di[1]);
    }
    else
    {
        printf("\n\n\tDividend is: %0.2f%0.2fi", di[0], di[1]);
    }
return 0;
}
Заранeе спасибо.

Решение задачи: «Нулевые результаты при вычислении выражения»

textual
Листинг программы
int di[2];
    
    di[0]=((comp.a*comp.c+comp.b*comp.d) / (comp.c * comp.c + comp.d * comp.d));
    di[1]=((comp.b*comp.c-comp.a*comp.d) / (comp.c * comp.c + comp.d * comp.d));

Объяснение кода листинга программы

  1. Объявляется массив di размером 2.
  2. Задаются значения переменных comp.a, comp.b, comp.c, comp.d.
  3. Вычисляется значение di[0] по формуле (comp.a*comp.c+comp.b*comp.d) / (comp.c * comp.c + comp.d * comp.d).
  4. Вычисляется значение di[1] по формуле (comp.b*comp.c-comp.a*comp.d) / (comp.c * comp.c + comp.d * comp.d).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.769 из 5
Похожие ответы