Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 28.04.2018
Сообщений: 3

Как сделать тоже самое только с 10 переменными?

20.06.2018, 20:53. Показов 1304. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, плз.
Есть три типа переменных CN, F и Result;
У каждого из CN есть определенное значение, поэтому нужно его проверять, и есть определенный индекс, к которому привязаны переменные F.
Сначала проверяются переменные типа CN, потом используются их индексы, далее сравниваются переменные F с теми же индексами и в переменную Result записывается наибольшее значение, причем если , например CN3 не соответствует своему значению, то F3 не рассматривается. Так же и с остальными.


Вот есть примерный набросок кода, и надо повторить только с 10 CN и 10 F(по возможности, чтобы код был довольно небольшим):


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if ( IsValueValid (CN1) && IsValueValid(CN2) && IsValueValid(CN3)  )    
        Result = Math.Max(Math.Max(F2,F1),F3);  
 
    else if (IsValueValid (CN1) && IsValueValid(CN2))
        Result = Math.Max(F1, F2);   
 
    else if (IsValueValid (CN2) && IsValueValid(CN3))
        Result = Math.Max (F2, F3);
 
    else if (IsValueValid (CN1) && IsValueValid(CN3))
        Result = Math.Max (F1, F3);
 
    else if (IsValueValid (CN1)
        Result = F1;
    else if (IsValueValid (CN2)
        Result = F2;
    else if (IsValueValid (CN3)
        Result = F3;
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.06.2018, 20:53
Ответы с готовыми решениями:

Как сделать тоже самое только методом Lookup???
TLocateOptions Options; Options.Clear(); Options << loPartialKey; if (ADOQuery1->Locate("идентификационный код",mStr,Options)) ...

Как сделать что бы самое длинное слово и самое короткое тоже выводились
Как сделать что бы самое длинное слово и самое короткое тоже выводились? using System; Console.WriteLine("Введите...

Как сделать тоже самое, но чтоб в TP Работало?
Вот вариант обработки функции выделения n-го слова. TP lowercase не распознаёт... Как переделать? Function WordN(s4:string):string;...

3
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
20.06.2018, 21:52
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
            int[] CN = new int[10]
                {
                    1,2,3,4,5,6,7,8,9,0
                };
            
            int[] F = new int[10]
                {
                    9,8,7,6,5,4,3,2,1,0
                };
 
            int[] CNValidIndexes = CN.Select((val, idx) => new { Value = val, Index = idx })
                                     .Where(t => IsValueValid(t.Value))
                                     .Select(t => t.Index)
                                     .ToArray();
 
            int Result = F.Where((val, idx) => CNValidIndexes.Contains(idx))
                          .Max();
1
0 / 0 / 0
Регистрация: 28.04.2018
Сообщений: 3
21.06.2018, 16:28  [ТС]
А можно еще с комментариями?
Я просто еще только учусь и не особо разбираюсь в linq
0
1152 / 860 / 263
Регистрация: 30.04.2009
Сообщений: 3,603
22.06.2018, 00:40
Лучший ответ Сообщение было отмечено ashygerf как решение

Решение

А что, собственно, тут обьяснять?
Вроде бы Linq достаточно user friendly чтобы его понять.

Еще немного упростил решение
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
            int[] CN = new int[10]
                {
                    1,2,3,4,5,6,7,8,9,0
                };
            
            int[] F = new int[10]
                {
                    9,8,7,6,5,4,3,2,1,0
                };
 
            int Result = CN.Select((val, idx) => new { Value = val, Index = idx }) // на основании массива CN создаем список обьектов содержащих значение + его индекс в массиве
                           .Where(t => IsValueValid(t.Value)) // фильтруем этот список так чтобы результат содержал только элементы удовлетворяющие условию
                           .Select(t => F[t.Index]) // на основании индексов из отфильтрованного списка выбираем соотвестсвующие элементы из массива F
                           .Max(); // из получившегося списка выбираем максимальный элемент
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.06.2018, 00:40
Помогаю со студенческими работами здесь

Как сделать тоже самое ток на php?
public string GetHTML() { string html, row1 = "", row2 = ""; html = "<table border=1...

Как сделать тоже самое для отрицательных чисел?
перевод из 16-й в десятичную.это для положительных, а как добавить для отрицательных чисел? type binmas = array of integer; var...

Тоже самое только без цикла
Нужно сделать тоже самое только без цикла (ни какой цикл!) static void Main(string args) { string name =...

Обмен местами в массиве(тоже самое только консоль)
Значит так же, меняется местами соседние значения, но в строке "array = array;" возникает ошибка "выход за границы массива" ...

Работаю в интерфейсе 3D моделирование, пытаюсь сделать фаску на резьбе болта, делаю все тоже самое как и на обучающем видео, но почему то в конце
Вместо результата в командной строке пишут : "Сбой фаски" И еще у меня рядом с курсором какой то, что ли маленький синий...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru