Программа не работает с вещественными числами - C (СИ)

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

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

Доброй ночи! Проблемма в том, что программа почему то не работает с вещественными числами, с типом int всё прекрасно. С типом float, никокой реакции, ошибок тоже никаких не выбивает. Подскажите в чём проблемма
#include <stdio.h>
#include <stdlib.h>
 
main()
{
    int i,j,max_i,min_j;
    float mas[7][7],max,min,pr=1;
    clrscr();
    printf("vvedite elementi massiva:\n");
    for ( i=0; i<3; i++)
    {
         for ( j=0; j<3; j++)
            scanf ("%f", &mas[i][j]);
    }
    max=mas[0][0];
    min=mas[0][0];
    printf("ishodniy massiv:\n");
    for( i=0; i<3; i++)
    {   for( j=0; j<3; j++)
        {   printf("%f ",mas[i][j]);
            if(mas[i][j]>max)
            {   max=mas[i][j];
                max_i=i;}
            if(mas[i][j]<min)
            {   min=mas[i][j];
                min_j=j;}
        }
        printf("\n");
    }
        for ( i=0; i<3; i++)
        {   pr=pr+mas[max_i][i]*mas[i][min_j];
        }
    printf("skalyarnoe proizvedenie:%f",pr);
    getch();
}

Решение задачи: «Программа не работает с вещественными числами»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
int main()
{
    int i, j, max_i=0, min_j=0;
    float mas[3][3], max, min, pr=0.0;
    printf("vvedite elementi massiva:\n");
    for (i=0; i<3; i++)
    {
         for ( j=0; j<3; j++)
            scanf ("%f", &mas[i][j]);
    }
    max=mas[0][0];
    min=mas[0][0];
    printf("ishodniy massiv:\n");
    for( i=0; i<3; i++)
    {   for( j=0; j<3; j++)
            printf("%2.2f ",mas[i][j]);
        printf("\n");
    }
    for(i=0;i<3;i++)
    {
        for(j=0;j<3;j++)
        {   
            if(mas[i][j]>max)
            {
                max=mas[i][j];
                max_i=i;
            }
            if(mas[i][j]<min)
            {
                min=mas[i][j];
                min_j=j;
            }
        }
    }
    for (i=0; i<3; i++)
    {
        pr += mas[max_i][i] * mas[i][min_j];
    }
    printf("skalyarnoe proizvedenie: %2.2f",pr);
    getch();
    return 0;
}

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


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

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

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