Kumud Dumbre Ответов: 2

Добавленная стоимость дубликатов


у меня есть
int[] array1 = {1,2,3,4,2,4,5}
int[] array2 = {7,8,9,10,4. 4,2,3}

я хочу получить результат, как показано ниже

int[] array1 = {1,2,3,4,5}
int[] array2 = {7,12. 4,12,10,4. 4,3}

добавление дубликатов-как 2 повторяется и 2 имеет 8,4. 4 значения в array2
то же самое, что 4 повторяется в array1 и имеет значения 10 и 2 в array2
теперь я хочу показать, что значение для 2 равно 12,4, а значение для 4 равно 12.

Что я уже пробовал:

попробовал ниже Решение
class Program
	{
		public static void Main(string[] args)
		{
			int [] sArray = {10,20,30,40,40,50,60};
			var sList = new ArrayList();
			
			for (int i = 0; i < sArray.Length; i++) {
			    if (sList.Contains(sArray[i]) == false) {
			        sList.Add(sArray[i]);
			    }
			}
			
			var sNew = sList.ToArray();
			
			for (int i = 0; i < sNew.Length; i++) {
			    Console.Write(sNew[i]);
			}
			Console.ReadLine();
		}
	}

Jon McKee

Ваши выходные данные для массивов №1 и № 2 сильно отличаются. Массив #1 к модифицированному массиву #1 имеет смысл, но от массива #2 к модифицированному массиву #2 не имеет никакого видимого смысла. Не могли бы вы подробнее рассказать о преобразовании между массивом № 2 и модифицированным массивом № 2?

Kumud Dumbre

да , это сложно , но должно быть решение для этого, которое я не могу найти, мой вопрос заключается в том, что array1 имеет значения {1,2,3,4,2,4,5}, а array2 имеет значения {7,8,9,10,4.4,2,3} теперь я хочу сделать сложение в array2 на основе дубликатов array1 ; как 2 повторяется 2 раза в array1, так что я хочу сделать сложение 8 и 4.4 из array2 также 4 повторяется 2 раза в array1, так что я хочу сделать сложение 10 и 2 из array2, таким образом, выходные данные должны быть похожи на array1 {1,2,3,4,5} и array2{7,12.4,9,12,3}

Jon McKee

Я бы попытался помочь, честно, но я все еще не уверен, что вы ищете. Сложение 8 и 4,4 даст 16. Кроме того, я не уверен в правилах относительно того, что должно быть добавлено в массив № 1 в какой позиции и что должно быть проигнорировано. Например, почему 7 не модифицируется массивом №2? С моей точки зрения, кажется, что нет никакой связи между измененными значениями и индексом в массиве № 2.

Kumud Dumbre

у меня есть повторяющиеся числа в array1 2 и 4, а их значения в array2 8,4. 4 для числа 2 и 10,2 для числа 4 array1, теперь я просто хочу сделать сложение чисел в array2 на основе индекса array1, так что это будет выглядеть как array1 {1,2,3,4,5} и array2{7,12. 4,9,12,3}

Kumud Dumbre

я очень благодарен Вам, Джон Макки, за то, что вы мне помогли.

Philippe Mori

Кстати, как можно получить целое число со значением 8,4? Если вы не понимаете, что такое int есть, есть, наверняка, вы должны читать книги, чтобы учиться или перестать спать в школе.

2 Ответов

Рейтинг:
2

Patrice T

Мы не делаем вашу домашнюю работу.
Домашнее задание предназначено не для того, чтобы проверить ваши навыки просить других людей сделать вашу работу, оно предназначено для того, чтобы заставить вас думать и помочь вашему учителю проверить ваше понимание курсов, которые вы прошли, а также проблем, с которыми вы сталкиваетесь при их применении.
Любая ваша неудача поможет учителю выявить ваши слабости и наметить меры по их исправлению.
Итак, попробуйте, перечитайте свои уроки и приступайте к работе. Если вы застряли на конкретной проблеме, покажите свой код и объясните эту точную проблему, мы можем помочь.

Как программист, ваша задача-создавать алгоритмы это решает конкретные проблемы, и вы не можете полагаться на кого-то другого, чтобы вечно делать это за вас, поэтому есть время, когда вам придется научиться этому. И чем скорее, тем лучше.
Когда вы просто просите решение, это все равно что пытаться научиться водить машину, обучая кого-то другого.
Создание алгоритма-это в основном поиск математики и необходимая адаптация к вашей реальной задаче.

как я понимаю проблема:

Each time you find a duplicate in array1 at position x and y,
    you add array2[y] to array2[x]
    remove array2[y] and array1[y]

Вам просто нужно перевести это в код.


Рейтинг:
1

OriginalGriff

Мы не делаем домашнее задание: оно задано не просто так. Она существует для того, чтобы вы думали о том, что вам сказали, и пытались понять это. Он также существует для того, чтобы ваш наставник мог определить области, в которых вы слабы, и сосредоточить больше внимания на корректирующих действиях.

Попробуйте сами, возможно, вы обнаружите, что это не так сложно, как вы думаете!
Я дам вам подсказку: ваш sList содержит все числа, которые дублируются в sArray - поэтому вам нужно использовать эту информацию, чтобы найти все числа во втором массиве с соответствующими индексами в исходном массиве - вы не делаете этого, вы печатаете числа, которые дублируются, а не что-либо связанное со "вторым массивом".
Лично я бы сделал это совсем по - другому-я бы создал класс (или структуру), который содержал бы значение, количество раз, когда оно встречалось, и общее значение из второго массива, а затем сохранил бы его в массиве уникальных значений, так что мне нужно было бы пройти через первый массив только один раз. Затем я бы напечатал из этого массива те, число которых больше единицы. Но это может быть немного продвинуто для вас, поэтому попробуйте сделать это со вторым циклом, чтобы сложить значения для каждого повторения.

Если вы столкнетесь с конкретной проблемой, то, пожалуйста, спросите об этом, и мы сделаем все возможное, чтобы помочь. Но мы не собираемся делать все это для вас!


Jon McKee

Я дал ему презумпцию невиновности, но не могу с этим не согласиться. Домашнее задание предназначено для того, чтобы заставить вас думать. Без способности думать вы не более чем копипаст-бот, для которого google мог бы сделать вашу работу.

OriginalGriff

Хуже того:" домашнее задание по развитию " предназначено для того, чтобы научить вас *как* думать! :смеяться:

Jon McKee

Зачем думать, когда можно просто спросить КП или около того? :смеяться: