Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
1

Изменение максимума из двух чисел

30.08.2018, 17:32. Показов 2097. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
using System;
 
class MainClass
{
  private static ref int Max(ref int x, ref int y)
  {
    if (x > y)
    {
      return ref x;
    }
    else
    {
      return ref y;
    }
  }
 
  public static void Main(string[] args)
  {
    x1 = 2;
    x2 = 3;
    ref Max(ref x1, ref x2) += 4;
    Console.WriteLine(x2);
  }
}
Как без использования дополнительной переменной увеличить возвращенный методом Max максимум из двух чисел на 4?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.08.2018, 17:32
Ответы с готовыми решениями:

Написать программу поиска максимума из трех заданных чисел, используя процедуру поиска максимума из двух чисел
Написать программу поиска максимума из трех заданных чисел, используя процедуру поиска максимума из...

Используя функцию нахождения максимума из двух чисел, найти наибольшее из 5 чисел
Используя большее из двух чисел, найти большие из чисел А, В, С, Н, Р. А=1, В=0, С=4, Н=4, Р=3

Нахождение максимума двух чисел
Что значит нахождение максимума двух чисел, а именно вот такая запись return (a > b) ? a : b;

Нахождение максимума из двух чисел
Даны 4 числа - a,b,c,d. Получить три числа - x=max(a,b) y=max(c,d) z=max(x,y). Нахождение максимума...

12
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 17:44 2
Если увеличенным на 4. то return x+4; и всё

Добавлено через 6 минут

Не по теме:

Или я не понял вопроса

0
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
30.08.2018, 17:51  [ТС] 3
Masson1848, мне нужно, чтобы метод вернул ссылку на переменную-максимум, а эту ссылку я бы увеличил на 4.
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 17:55 4
Не понимаю всё равно. Ты хочешь вернуть ссылку на максимальное число и это число уже увеличить на 4? Под ссылку всё равно выделяется память. как ты хочешь безе 3 переменной, оставить две остальные неизменными?
0
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
30.08.2018, 18:03  [ТС] 5
Цитата Сообщение от Masson1848 Посмотреть сообщение
Ты хочешь вернуть ссылку на максимальное число и это число уже увеличить на 4?
Да.
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 18:07 6
Соколиный глаз, Если ты возвращаешь ссылку, значит эту ссылку должно что-то хранить, не так ли?
0
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
30.08.2018, 18:12  [ТС] 7
Погоди, но ведь я могу писать так:
C#
1
2
3
4
5
6
7
8
9
10
11
using System;
 
class MainClass
{
  public int x = 0;
 
  public static void Main(string[] args)
  {
    new MainClass().x += 1;
  }
}
. Здесь ничего не хранит ссылку на объект. Так почему с ссылками возвращаемыми подобное делать нельзя?
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 18:27 8
Соколиный глаз, Но так ты этот объект нигде не можешь дальше использовать, смысла в этой записи ноль.

Добавлено через 5 минут
Цитата Сообщение от Соколиный глаз Посмотреть сообщение
public static void Main(string[] args)
* {
* * x1 = 2;
* * x2 = 3;
* * ref Max(ref x1, ref x2) += 4;
* * Console.WriteLine(x2);
* }
Если тебя не волнуют что останется в значениях после, можно сделать так

C#
1
2
3
4
5
6
7
8
9
public void FindMax(ref int a,ref int b)
        {
            if(a<b)
            {
                int c = b;
                b = a;
                a = b;
            }
        }
И максимумом у тебя будет всегда первое число. И делай с ним, что хочешь.
0
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
30.08.2018, 18:28  [ТС] 9
Я понимаю. Но все же это писать возможно. Так почему нельзя изменить максимум так как хочу я? Вопрос в том, почему я не могу получив ссылку на максимум сразу его изменить?
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 18:33 10
Соколиный глаз, Потому что в примере вы создаёте объект(экземпляр) класса, у которого есть значения int равное 0, и вы к нему можете прибавить n-ое количество единиц. Там у вас ссылка на объект, а не на само число.
0
Alvin Seville
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
30.08.2018, 18:35  [ТС] 11
Да, но метод Max тоже возвращает ссылку - ссылку на максимум.
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
30.08.2018, 18:40 12
Соколиный глаз, Это, скорее всего, зависит от типа хранения данных.
1
Администратор
Эксперт .NET
17019 / 13372 / 5217
Регистрация: 17.03.2014
Сообщений: 27,342
Записей в блоге: 1
31.08.2018, 01:43 13
Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Соколиный глаз, нужно было без ref написать
C#
1
2
3
4
int x1 = 2;
int x2 = 3;
Max(ref x1, ref x2) += 4;
Console.WriteLine(x2); // 7
1
31.08.2018, 01:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.08.2018, 01:43
Помогаю со студенческими работами здесь

Функция определения максимума двух чисел
Не понимаю как написать. Для данных вещественных чисел x и y рассчитать, определив в программе...

Нахождение максимума из двух заданных чисел
Написать программу для нахождения максимума из двух заданных чисел. Тема процедуры и функции.

Рекурсия: определение максимума из двух чисел
Добрый день или вечер! Помогите разобраться в задаче на рекурсию. Не пойму, какой из вариантов...

Составить подпрограмму нахождения максимума из двух чисел
Определив подпрограмму нахождения максимума из двух чисел, найти максимум из четырех заданных...

Реализовать функции поиска минимума и максимума, среди двух заданных чисел (статичные библиотеки)
Написать статическую библиотеку, в которой реализовать 2 функции: одну на поиск минимума, а вторую...

Создать функцию максимума из двух
День добрый, Как создать функцию, g(x)=max{f(x,y)} которая есть максимум на промежутке 0&lt;=y&lt;=x,...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru