В массивах определить количество элементов, лежащих в заданном интервале - C (СИ) (73062)
Формулировка задачи:
Здравствуйте!
Я не могу справиться со своей лабораторной работой, и буду весьма признателен, если вы мне поможете
Состоит работа из двух частей, и если с первой, я сломя голову справлюсь, то со второй я бессилен
I
В массивах A(25) и B(21) определить количество элементов, лежащих в интервале [-1,0], а так же их произведение и номера. A0=0,25 AI+1=Ai*sin(I-2,5) Bi=(-1)i*sin(Ai)/cos(Ai); Вывести на экран для каждого массива: элементы массива (5 знаков после десятичной точки) в строку, количество элементов, принадлежащих интервалу [-1,0] , их произведение и номера. При выводе элементов массива обеспечить их согласованное расположение друг под другом в строках на экране.II
Составить эту же программу, но с использованием функции malloc. Спасибо.Решение задачи: «В массивах определить количество элементов, лежащих в заданном интервале»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <math.h> #define N 25 #define M 21 int main() { float* A = malloc(sizeof(float) * N); int* idxA = malloc(sizeof(int) * N); float* B = malloc(sizeof(float) * M); int* idxB = malloc(sizeof(float) * M); int i, lenA = 0, lenB = 0; float a = 1.0, b = 1.0; A[0] = 0.25; for (i = 1; i < N; ++i) { A[i] = A[i - 1] * sin((float)i - 2.5); } for (i = 0; i < M; ++i) { B[i] = pow(-1, i) * sin(A[i]) / cos(A[i]); } printf("elements: "); for (i = 0; i < N; ++i) { if ((-1 <= A[i]) && (A[i] <= 0)) { a *= A[i]; idxA[lenA++] = i; printf("%.5f ", A[i]); } } printf("\n"); printf("op.: %f\n", a); printf("cnt: %d\n", lenA); printf("idx: "); for (i = 0; i < lenA; ++i) { printf("%d ", idxA[i]); } printf("\n\n"); printf("elements: "); for (i = 0; i < M; ++i) { if ((-1 <= B[i]) && (B[i] <= 0)) { b *= B[i]; idxB[lenB++] = i; printf("%.5f ", B[i]); } } printf("\n"); printf("op.: %f\n", b); printf("cnt: %d\n", lenB); printf("idx: "); for (i = 0; i < lenB; ++i) { printf("%d ", idxB[i]); } printf("\n\n"); free(idxB); free(B); free(idxA); free(A); return 0; }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы
- Определяются константы N и M
- Задаются начальные значения переменных a и b, а также инициализируются массивы A и B
- Заполняются массивы A и B значениями
- Вычисляются значения a и b
- Выводится информация о найденных значениях a и b, а также индексах их элементов в массивах A и B
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д