Получить последовательность по правилу - C (СИ) (74993)
Формулировка задачи:
Даны действительные числа A[1],A[2],A[3],...,A[2*n]. Получить A[1]+A[2n],A[2]+A[2n-1],...,A[n] + A[n+1].
Мои наработки:
ВЫДАЕТ КОМПИЛЯТОР ТАКИЕ ОШИБКИ:
error C2065: N: необъявленный идентификатор
cpp(17): warning C4244: аргумент: преобразование "time_t" в "unsigned int", возможна потеря данных
cpp(24): error C2065: N: необъявленный идентификатор
cpp(26): warning C4244: =: преобразование "double" в "float", возможна потеря данных
cpp(33): error C2065: N: необъявленный идентификатор
.cpp(35): error C2108: индекс имеет нецелый тип
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <time.h> #define N10 int main() { int i=0; float a[N]; float l; srand(time(NULL)); printf("l: "); scanf_s("%2f", &l); a[i]=2*l; for (i = 0; i <N ;i++) { a[i] = rand() %1000/100.0; printf("Massiv\n"); printf("%2f ", a[i]); } printf("\n"); for (i = 0; i < N; i++); { a[i]=a[i]+a[2*l-i-1]; printf("%3f", a[i]); } printf("\n"); return 0; }
Решение задачи: «Получить последовательность по правилу»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 10 int main() { int i = 0; float a[2*N]; srand(time(NULL)); printf("Massiv\n"); for (i = 0; i < 2*N ; i++) { a[i] = rand() % 1000 / 100.0; printf("%.2f ", a[i]); } printf("\n\n"); for (i = 0; i < N; i++) { a[i] = a[i] + a[2 * N - i - 1]; printf("%.2f ", a[i]); } printf("\n"); return 0; }
Объяснение кода листинга программы
Вывод программы: Массив 0.58 0.34 0.92 0.71 0.62 0.80 0.51 0.65 0.98 0.55 0.31 0.42 0.63 0.54 0.73 0.89 0.97 0.68 0.85 0.57 В данном коде выполняются следующие действия:
- Определение массива и его размера: В начале программы определяется размер массива N и создается массив a с двойным размером массива N. Значение N в данном случае равно 10.
- Инициализация генератора случайных чисел: С помощью функции srand(time(NULL)) инициализируется генератор случайных чисел. Это делается для того, чтобы при каждом запуске программы генерировались разные случайные числа.
- Вывод исходного массива: С помощью цикла for и функции printf выводится исходный массив a. Каждое значение массива выводится с шагом 0.2.
- Объединение элементов массива: С помощью второго цикла for и операции сложения объединяются элементы массива a. Элементы с индексами 0 и 10 (так как массив имеет двойной размер) объединяются в одно число. После этого полученные значения выводятся на экран.
- Возврат значения 0: В конце программы возвращается значение 0, что означает успешное выполнение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д