Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 19.05.2012
Сообщений: 52
1

Заменить нули в целочисленном массиве полусуммой последующего и предыдущего чисел

22.04.2013, 18:24. Просмотров 1066. Ответов 3
Метки нет (Все метки)

Заменить нули в целочисленном массиве полусуммой последующего и предыдущего чисел(если ноль содержится в первом или последнем элементе,то необходимо взять 1/2 второго или предпоследнего чисел соответственно).

Проблема в том,что меняются почти все числа на ноль и полусумма выводится не в той строчке в которой нужно.
как исправить можно?
0
Вложения
Тип файла: rar 1.4.rar (55.6 Кб, 5 просмотров)
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2013, 18:24
Ответы с готовыми решениями:

Заменить нули в целочисленном массиве полусуммой последующего и предыдущего чисел
Заменить нули в целочисленном массиве полусуммой последующего и предыдущего чисел(если ноль...

Заменить нули в целочисленном массиве полусуммой последующего и предыдущего чисел
Составить программу, предусматривающую обработку значений одномерного массива. Ввод/вывод...

Заменить в массиве каждый нулевой элемент полусуммой последующего и предыдущего
Ввести с клавиатуры список, состоящий из 10 элементов. Заменить в нем каждый нулевой элемент...

Заменить в массиве каждый нулевой элемент полусуммой последующего и предыдущего
Составить программу с использованием базовых алгоритмов для работы с одномерными массивами Ввести...

3
Неадекват
1429 / 1183 / 229
Регистрация: 02.04.2010
Сообщений: 2,717
Записей в блоге: 2
22.04.2013, 20:05 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 private void button1_Click(object sender, EventArgs e)
        {
            int count = Mas1.Lines.Length;
            var input = new double[count];
 
            for (int i = 0; i < count; i++)
                Double.TryParse(Mas1.Lines[i], out input[i]);
 
            for (int i = 0; i < count; i++)
                if (input[i] == 0) input[i] = ((i != 0 ? input[i - 1] : 0) + ((i + 1 != count) ? input[i + 1] : 0)) / 2;
 
            Mas2.Clear();
 
            for (int i = 0; i < count; i++)
                Mas2.AppendText(input[i] + "\n");
        }
0
1 / 1 / 0
Регистрация: 19.05.2012
Сообщений: 52
23.04.2013, 04:53  [ТС] 3
можешь комментарии написать к строчкам?
0
Неадекват
1429 / 1183 / 229
Регистрация: 02.04.2010
Сообщений: 2,717
Записей в блоге: 2
23.04.2013, 10:10 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private void button1_Click(object sender, EventArgs e)
        {
            int count = Mas1.Lines.Length; //Получаем количество строк текстбокса = количеству элементов массива
            var input = new double[count]; //Объявляем массив
 
            //Заполняем массив
            for (int i = 0; i < count; i++)
                Double.TryParse(Mas1.Lines[i], out input[i]);
 
            //Преобразуем массив согласно условию
            for (int i = 0; i < count; i++)
                if (input[i] == 0) input[i] = ((i != 0 ? input[i - 1] : 0) + ((i + 1 != count) ? input[i + 1] : 0)) / 2;
 
            Mas2.Clear();
            
            //Выводим преобразованный массив
            for (int i = 0; i < count; i++)
                Mas2.AppendText(input[i] + "\n");
        }
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2013, 10:10

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Найти сколько чисел больше предыдущего и последующего чисел в массиве
Здравствуйте. Есть такое задание: задан массив. Запомнить сколько чисел больше предыдущего и...

Заменить каждый элемент массива на сумму предыдущего и последующего элемента
Дан массив размера N. Заменить каждый элемент(кроме крайних) массива на сумму предыдущего и...

Определить сколько из элементов вектора больше предыдущего и последующего чисел
Дан вектор целых чисел. Определить сколько из них больше предыдущего и последующего чисел.

В одномерном массиве целых чисел заменить все нули единицами
В одномерном массиве целых чисел заменить все нули единицами.

Считать строку из чисел, вывести на экран сумму предыдущего и последующего элемента
Считать строку из чисел, вывести на экран Сумму предыдущего и последующего (для первого элемента...

Определить сколько чисел в заданной последовательности больше предыдущего и последующего числа
Дана последовательность из 20 чисел .Определить сколько чисел в данной последовательности больше ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.