Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2018, 21:08   #1
kirill97
Новичок
Джуниор
 
Регистрация: 26.03.2018
Сообщений: 2
Вопрос В заданный массив целых чисел из N элементов вставить элемент, равный M после последнего минимума.

C#(HELP!) В заданный массив целых чисел из N элементов вставить элемент, равный M после последнего минимума.

Ребята хелпаните подскажите где ошибка(программа неправильно вставляет элемент после последнего минимума)


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
const int n = 6;
int[] array = new int[n];

int index = 1; //номер последнего положительного минимального элемента

Console.Write("Введите число P: ");
int p = int.Parse(Console.ReadLine());

Console.WriteLine("Введите элементы массива: ");
for (int i = 0; i < n - 1; i++)
{
Console.Write("a[{0}]= ", i + 1);
array[i] = int.Parse(Console.ReadLine());
}
for (int i = 0; i < n - 1; i++)
{
if (array[i] > 0) index = i;
}

if (index >= 0)
{
for (int i = n - 1; i > index; i--)
array[i] = array[i - 1];
array[index + 1] = p;

Console.WriteLine("\nПолученный массив:\n");
for (int i = 0; i < n; i++)
Console.Write(array[i] + " ");
Console.WriteLine();
}
else Console.WriteLine("\nВведенный массив состоит только из отрицательных элементов\n");
Console.ReadKey(true);
}
}
}

Последний раз редактировалось kirill97; 26.03.2018 в 22:35.
kirill97 вне форума Ответить с цитированием
Старый 26.03.2018, 22:55   #2
Ksonix
Пользователь
 
Регистрация: 23.01.2018
Сообщений: 12
По умолчанию

Цитата:
Сообщение от kirill97 Посмотреть сообщение
Console.Write("a[{0}]= ", i + 1);
array[i] = int.Parse(Console.ReadLine());
for (int i = 1; i < n - 1; i++)
{
if (array[index] >= array[i]) index = i;// находит индекс последнего минемума
}
Ksonix вне форума Ответить с цитированием
Старый 26.03.2018, 23:07   #3
kirill97
Новичок
Джуниор
 
Регистрация: 26.03.2018
Сообщений: 2
По умолчанию

Спасибо Ksonix)
kirill97 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C++] Создать очередь, содержащую целые числа. После всех чисел, кратных X, вставить новый элемент. ggjgj Помощь студентам 2 23.04.2017 16:25
assembler: Отсортировать заданный массив целых чисел А(I) в порядке возрастания их значений Aziret_@li Помощь студентам 1 21.09.2016 11:11
вычислить сумму целых частей элементов массива, расположенных после последнего отрицательного элемента shezik Помощь студентам 2 25.04.2016 19:05
Вставить новый элемент после всех элементов, которые заканчиваются на данную цифру Дюша Метелкин Паскаль, Turbo Pascal, PascalABC.NET 1 22.03.2016 12:30
Вставить новый элемент после всех элементов schibeki Общие вопросы по Java, Java SE, Kotlin 1 19.05.2015 20:39