Автор Александр Червяков задал вопрос в разделе Другие языки и технологии
Программирование. Одномерные массивы в си. и получил лучший ответ
Ответ от Krab Bark[гуру]
"я ни черта не понял на лекции" Совершенно нормально. Лекции служат только для того, чтобы понять, о чем читать в учебниках 🙂
Ответ от Ёерж[гуру]
Ну собственно числа нужно перебирать циклом, проверять насколько отличаются, и искать максимум.
Напишите на почту, сделаю.
Ну собственно числа нужно перебирать циклом, проверять насколько отличаются, и искать максимум.
Напишите на почту, сделаю.
Ответ от Bkmz bkmz[гуру]
по таким базовым вещам есть огромное количество информации
почитай, попытайся вникнуть, попытайся написать хоть что-то и выложи сюда, с конкретным вопросом, что именно тебе непонятно и что именно не получается
по таким базовым вещам есть огромное количество информации
почитай, попытайся вникнуть, попытайся написать хоть что-то и выложи сюда, с конкретным вопросом, что именно тебе непонятно и что именно не получается
Ответ от Ѓ-Ук[гуру]
создаем одномерный массив
инициализируем его начальными значениями (или заполняем случайными)
создаем 3 переменных: сумма элементов, величина остального числа (равно 0) и его позиция в массиве (равно 0)
в цикле начинаем перебор элементов массива
цикл (от 0 до границ массива, с шагом +1)
если (значение в текущем элементе массива по модулю меньше или равно 5)
то увеличиваем на это значение переменной, хранящей сумму элементов
иначе (если его значение больше переменной максимального значения)
то в эту переменную пишем это значение, а в переменную позиции записываем значение позиции
по окончании цикла выводим на экран значение переменных
создаем одномерный массив
инициализируем его начальными значениями (или заполняем случайными)
создаем 3 переменных: сумма элементов, величина остального числа (равно 0) и его позиция в массиве (равно 0)
в цикле начинаем перебор элементов массива
цикл (от 0 до границ массива, с шагом +1)
если (значение в текущем элементе массива по модулю меньше или равно 5)
то увеличиваем на это значение переменной, хранящей сумму элементов
иначе (если его значение больше переменной максимального значения)
то в эту переменную пишем это значение, а в переменную позиции записываем значение позиции
по окончании цикла выводим на экран значение переменных
Ответ от Ra[гуру]
#include <stdio.h>
#include <stdlib.h>
int main() {
int a[30], n, v, s = 0, m = -1, c;
srand(time(NULL));
printf("n? "); scanf("%d", &n);
if (n < 1 || n > 30) return 0;
puts("array:");
for (c = 0; c < n; ++c) {
a[c] = rand() % 199 - 99;
printf("%""4d", a[c]);
}
printf("
v? "); scanf("%d", &v);
for (c = 0; c < n; ++c) {
if (abs(v - abs(a[c])) <= 5) {
s += a[c];
} else if (m == -1 || a[c] > a[m]) {
m = c;
}
}
printf("sum: %d
", s);
if (m != -1) printf("max: a[%d] = %d
", m, a[m]);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
int a[30], n, v, s = 0, m = -1, c;
srand(time(NULL));
printf("n? "); scanf("%d", &n);
if (n < 1 || n > 30) return 0;
puts("array:");
for (c = 0; c < n; ++c) {
a[c] = rand() % 199 - 99;
printf("%""4d", a[c]);
}
printf("
v? "); scanf("%d", &v);
for (c = 0; c < n; ++c) {
if (abs(v - abs(a[c])) <= 5) {
s += a[c];
} else if (m == -1 || a[c] > a[m]) {
m = c;
}
}
printf("sum: %d
", s);
if (m != -1) printf("max: a[%d] = %d
", m, a[m]);
return 0;
}
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Программирование. Одномерные массивы в си.