Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 11.06.2014
Сообщений: 2

Рассчитать количество элементов массива, меньших некоторого числа С

12.06.2014, 00:03. Показов 1574. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В одномерном массиве, состоящем из n действительных элементов, рассчитать:
а) количество элементов массива, меньших некоторого числа С;
б) сумму целых частей элементов массива, расположенных после последнего отрицательного элемента.
Превратить массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более, чем на 20%, а потом - все остальные. Результаты всех расчетов и преобразований массива вывести на консоль

помогите написать
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.06.2014, 00:03
Ответы с готовыми решениями:

Найти количество элементов массива, меньших заданного числа
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { ...

Массив: Найти среднее арифметическое элемента массива меньших некоторого числа m
Найти среднее арифметическое элемента массива меньших некоторого числа m

Вычислить количество элементов массива, меньших C
В одномерном массиве, состоящем из n вещественных элементов вычислить: - количество элементов массива, меньших C Ошибка: Элемент...

5
Life Builder
 Аватар для sk007
531 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,755
12.06.2014, 02:16
Цитата Сообщение от engelhardt Посмотреть сообщение
а) количество элементов массива, меньших некоторого числа С;
C#
1
2
3
4
double[] a = { 1,2,3,4,5,5,5,6,6,-4,-7,-7 };
double C = 10;
 
Console.WriteLine("Кол-во полож. эл-тов: {0}", a.Count(x=> x<С));
Добавлено через 33 минуты
Цитата Сообщение от engelhardt Посмотреть сообщение
сумму целых частей элементов массива, расположенных после последнего отрицательного элемента.
C#
1
2
3
4
5
6
7
double[] a = { 1,2,-3,4,5,5,5,6,-41,-4.2, 7.9, 7.1 };
            int index = -1; a.First(n => { index++; return n == a.Last(x => x < 0); });
            double summa = 0;
 
            for (int i = index + 1; i < a.Length; i++) summa += a[i];
 
            Console.WriteLine("Сумма {0}", summa);
Добавлено через 44 минуты
Цитата Сообщение от engelhardt Посмотреть сообщение
Превратить массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более, чем на 20%, а потом - все остальные. Результаты всех расчетов и преобразований массива вывести на консоль
Вроде получилось
C#
1
2
3
4
5
6
7
8
9
10
11
double[] a = { -3,2,3,10};
            List<double> list = new List<double>();
            double max = a.Max();
            
            var b = a.Where(m => m  <= 1.2 * max & m >= 0.8 * max); foreach(double i in b.ToArray()) list.Add(i);
            b = a.Where(m => m > 1.2 * max | m < 0.8 * max); foreach (double i in b.ToArray()) list.Add(i);
 
            a = list.ToArray();
 
 
            foreach (var n in a) Console.WriteLine(n);
0
 Аватар для Веселый
87 / 88 / 48
Регистрация: 12.10.2013
Сообщений: 1,103
12.06.2014, 23:08
Очень не легко поддается логика предикатов.sk007 прокомментируйте пожалуйста пошагово логику предиката в методе
C#
1
a.First(n => { index++; return n == a.Last(x => x < 0); });
0
Life Builder
 Аватар для sk007
531 / 496 / 374
Регистрация: 12.01.2011
Сообщений: 1,755
12.06.2014, 23:29
Веселый, Пока n не ровняется последнему отрицательному элементу, в переменную index добавляется единица и возвращается true? если найдено в противном случае false. Этим я здесь находил индекс.

Ну что же, можно и упростить
C#
1
int index = Array.FindLastIndex(a, m => m < 0)
0
 Аватар для Финал
3 / 3 / 2
Регистрация: 11.09.2013
Сообщений: 192
13.06.2014, 19:35
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
using System;
class Demo
{
    static void Main()
    {
        Console.WriteLine("Введите рамерность массива: ");
        int sum,n, c, count,index;
        count = 0;
        n = Int32.Parse(Console.ReadLine());
        Console.WriteLine("Некоторо число С: ");
        c = Int32.Parse(Console.ReadLine());
        Random rnd = new Random();
        double[] dim = new double[n];
        double[] bufferdim = new double[n];
 
        index = n + 1;
        double maxdim = -100;
        Console.WriteLine();
        for (int i = 0; i < dim.Length; i++)
        {
            dim[i] = Math.Round((rnd.NextDouble() * rnd.Next(-20,100)),2);
            if (dim[i] < c) count++;
            if (dim[i] < 0) index = i;
            if (dim[i] > maxdim) maxdim = dim[i];
            Console.WriteLine("dim[{0}] равен {1} ", i, dim[i]);
        }
        Console.WriteLine();
        Console.WriteLine("количество элементов массива, меньших некоторого числа С: " + count);
        Console.WriteLine("последний отрицательный " + dim[index]);
        Console.WriteLine();
        sum = 0;
        Console.WriteLine("Элементы массива расположенные после последнего отрицательного элемента");
        for (int i = index+1; i < dim.Length; i++){
                Console.WriteLine("целая часть элемента dim["+i+"] равна: "+(int)dim[i]);
                sum += (int)dim[i];
            }
        Console.WriteLine();
        Console.WriteLine("сумма целых  элементов массива, после последнего отрицательного равна: "+sum);
        Console.WriteLine("Максимальный элемент массива: " + maxdim);
        Console.WriteLine();
        count = 0;
        for(int i=0;i<dim.Length;i++)
            if (dim[i] <= maxdim * 0.2)
            {
                bufferdim[count] = dim[i];
                count++;
            }
        for (int i = 0; i < dim.Length; i++)
            if (dim[i] > maxdim * 0.2)
            {
                bufferdim[count] = dim[i];
                count++;
            }
        Console.WriteLine();
        dim=bufferdim;
        Console.WriteLine("новый отсортированный массив");
        for (int i = 0; i < bufferdim.Length; i++)
            Console.WriteLine("dim[{0}] равен {1} ", i, dim[i]);
        Console.ReadKey();
    }
}
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
13.06.2014, 19:56
Цитата Сообщение от sk007 Посмотреть сообщение
Ну что же, можно и упростить
это называется не упростить а сделать правильно.

а изначально ваше творчество ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.06.2014, 19:56
Помогаю со студенческими работами здесь

Количество элементов массива, меньших следующего
Дан массив, состоящий из целых чисел. Напишите программу, которая подсчитает количество элементов массива, меньших следующего. Входные...

Найти количество элементов массива меньших С
В одномерном массиве, состоящем из вещественных элементов, вычислить: - Количество элементов массива меньших С; - Сумму целых частей...

Вычислить количество элементов массива, меньших С
В одномерном массиве, состоящем из и вещественных элементов, вычислить: • количество элементов массива, меньших С;

Количество элементов массива, меньших за среднее значение
Здравствуйте, нужна помощь по массивам, вот задачка: Количество элементов массива, меньших за среднее значение. Заранее спасибо!

В каждой строке матрицы найти количество элементов, меньших среднего арифметического всех элементов этой строки
Здравствуйте. Есть такое задание: Дана матрица размера M×N. В каждой ее строке найти количество элементов, меньших среднего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru