Найти последнее неотрицательное число в массиве и разделить на него положительные числа массива - C (СИ)
Формулировка задачи:
В результате не выдает результат деления.
Дан одномерный массив чисел {Ai}, i =1...14. Найти последнее неотрицательное число в массиве и разделить на него положительные числа массива.
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <conio.h> int main() { int a[14], i, sum, k, n; float d; for(i=1;i<=14;i++){ a[i]=rand()%20-10; printf("%4d", a[i]); } sum=1; for(i=0;i<=14;i++){ if(a[i]>0) sum=sum+a[i]; if(a[i]<0){ n=i; k=a[i]; } } d=k/sum; printf("\n%d \n%.2f\n", k, d); getch(); return 0; }
Решение задачи: «Найти последнее неотрицательное число в массиве и разделить на него положительные числа массива»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> #include <locale.h> #define n 14 int main(){ setlocale(LC_ALL, "rus"); srand(time(0)); float array_a[n]; int i; float last; printf("Массив:\n"); for(i = 0; i < n; i++){ array_a[i]= rand()%20 - 10; printf("%.2f ", array_a[i]); } for(i = n - 1; i >= 0; i--){ if(array_a[i] > 0){ last = array_a[i]; break; } } printf("\nПоследнее положительное: %f\n", last); printf("\nИтог:\n"); for(i = 0; i < n; i++){ if(array_a[i] > 0){ array_a[i] = array_a[i] / last; } printf("%.2f ", array_a[i]); } printf("\n"); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с языком программирования C
- Определение размера массива n
- Инициализация генератора случайных чисел
- Создание массива array_a с помощью оператора malloc
- Заполнение массива случайными числами с помощью функции rand()
- Вывод массива на экран с помощью цикла for и функции printf
- Поиск последнего неотрицательного числа в массиве с помощью цикла for и условия if
- Сохранение найденного числа в переменной last
- Вывод найденного числа на экран с помощью функции printf
- Разделение положительных чисел массива на последнее неотрицательное число с помощью цикла for и оператора /
- Вывод полученного результата на экран с помощью функции printf
- Освобождение памяти, выделенной под массив, с помощью функции free
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д