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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2016, 18:50   #1
Sovetnik
Новичок
Джуниор
 
Регистрация: 12.04.2016
Сообщений: 5
По умолчанию Присвоить нулевое значение числам попадающим в интервал

Здравствуйте дорогие форумчане, пожалуйста, помогите студенту с задачкой.
Очень прошу посмотреть и помочь с моим кодом, написать то написал программу, а вот правильно не получается.
Собственно, излагаю задачу ниже:

Дан одномерный числовой массив из N целых чисел. Числам, что лежат между минимальным и максимальным числами присвоить 0. Заметьте, я написал числами(макс, мин), а не элементами.
Я эту задачу так и не смог решить. Прошу вашей помощи.
Вот мой код:
PHP код:
#include<iostream>
#include<string.h>
using namespace std;
int main() {
int n;
cin>>n;
long long a[n+1];
for(
long long i(1); i<=ni++)
    
cin>>a[i];
long long mx,mn,x=0,y=0;
mx a[1]; mn=a[1];
for(
long long i(1); i<=ni++)
{
    if(
mx<a[i])
        {
mx a[i]; x=i;}
    if(
mn>a[i])
       {
mn a[i]; y=i;}
}
for(
long long i(1); i<=ni++)
{
    if(
a[y]<a[i]&&a[i]<a[x])
    {
a[i] = 0;}
}
for(
long long i(1); i<=ni++)
    
cout<<a[i]<<" ";
 
 
return 
0;

Для проверки:
n=3; 1 2 3 => 1 0 3;
n=4; 3 4 2 1 => 3 4 0 1;
Sovetnik вне форума Ответить с цитированием
Старый 13.04.2016, 00:18   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

А чо делать, если макс. и/или мин. чисел найдётся несколько?
З.Ы. Никогда не пихай всё в main(), разделяй задачу на подпункты и реализуй их функциями.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 13.04.2016, 05:34   #3
Sovetnik
Новичок
Джуниор
 
Регистрация: 12.04.2016
Сообщений: 5
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
А чо делать, если макс. и/или мин. чисел найдётся несколько?
З.Ы. Никогда не пихай всё в main(), разделяй задачу на подпункты и реализуй их функциями.
Извиняюсь, забыл доконца перевести условие задачи.
ГАРАНТИРУЕТСЯ что в примере будут единственный минимум и максимум. Т.е. по одной штуке каждой. НЕ больше.
Sovetnik вне форума Ответить с цитированием
Старый 13.04.2016, 07:54   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Извиняюсь, забыл доконца перевести условие задачи.
ГАРАНТИРУЕТСЯ что в примере будут единственный минимум и максимум. Т.е. по одной штуке каждой. НЕ больше.
да мне-то всё равно.
пиши 5 функций и вызывай их из main():
Код:
int array_in(int* x);  // ввод массива (с возвратом длины)
int min(int* x, int count);  // поиск минимума
int max(int* x, int count);  // поиск максимума
void zero(int* x, int index1, int index2);  // обнуление диапазона
void array_out(int* x);  // вывод результата
отлаживать отдельные функции гораздо удобнее и быстрее.
З.Ы. Не используй глобальные переменные там, где можно обойтись без них.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 13.04.2016, 17:33   #5
Sovetnik
Новичок
Джуниор
 
Регистрация: 12.04.2016
Сообщений: 5
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
да мне-то всё равно.
пиши 5 функций и вызывай их из main():
Код:
int array_in(int* x);  // ввод массива (с возвратом длины)
int min(int* x, int count);  // поиск минимума
int max(int* x, int count);  // поиск максимума
void zero(int* x, int index1, int index2);  // обнуление диапазона
void array_out(int* x);  // вывод результата
отлаживать отдельные функции гораздо удобнее и быстрее.
З.Ы. Не используй глобальные переменные там, где можно обойтись без них.
А можно на языке чайников?) Я только только учусь с++, код у вас признаться не столь "приветливый". Не поймешь с первого раза о чем вообще.
Sovetnik вне форума Ответить с цитированием
Старый 13.04.2016, 17:40   #6
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
А можно на языке чайников?
Я такой язык не знаю, сорри. Окодемиев не кончал, работаю дворником.
Где скачать учебник?
Цитата:
код у вас признаться не столь "приветливый"
где ты код-то увидел? это ж прототипы, ёмаё... Комментарии у тебя там не отображаются или буквы в них незнакомые?
Цитата:
Не поймешь с первого раза о чем вообще.
разрешаю перечитать ещё один раз.

Могу только написать программу полностью с нуля. Но с одним условием.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 13.04.2016, 19:39   #7
Sovetnik
Новичок
Джуниор
 
Регистрация: 12.04.2016
Сообщений: 5
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Могу только написать программу полностью с нуля. Но с одним условием.
Я весь во внимании сударь.

Вот насчет этого хотел спросить:
Цитата:
Сообщение от min@y™;
отлаживать отдельные функции гораздо удобнее и быстрее.
З.Ы. Не используй глобальные переменные там, где можно обойтись без них.
Из того, что я читал и видел в видеоуроках. Глобальными переменными называют те, что находятся ВНЕ main(), а те, что внутри неё(в данном случае именно маин, а так по сути внутри любой функции), это лкальные.
В отличии от локальных, глобальные действуют во всех функциях. А локальные только внутри своей.
Правильно ли я выразился?
Sovetnik вне форума Ответить с цитированием
Старый 13.04.2016, 20:16   #8
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Правильно ли я выразился?
что-то в этом роде.
Цитата:
Я весь во внимании сударь.
Я напишу тебе прогу, если ты мне докажешь, что это мне надо.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 13.04.2016, 21:59   #9
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
что это мне надо.
Ты должен это сделать.
Твои веки тяжелеют, глаза закрываются, ты спишь.
Ты должен написать ему код!
Ты должен написать ему код!


Получилось загипнотизировать?
Croessmah вне форума Ответить с цитированием
Старый 13.04.2016, 22:19   #10
Sovetnik
Новичок
Джуниор
 
Регистрация: 12.04.2016
Сообщений: 5
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
что-то в этом роде.

Я напишу тебе прогу, если ты мне докажешь, что это мне надо.
Вам это и не надо. Но, вы можете помочь студенту который пытается понять этот покамись сложный для него ЯП.
Sovetnik вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переменной t присвоить значение true, если дата d1, m1 предшествует (в рамках года) дате d2, m2, и значение false иначе Andrew5674 Паскаль, Turbo Pascal, PascalABC.NET 4 11.12.2013 21:37
Как значение с combobox1 присвоить в интервал таймера TUberwer Общие вопросы Delphi 2 10.08.2013 22:49
как присвоить значение??? VintProg Общие вопросы C/C++ 1 05.08.2011 15:21
ак переменной а присвоить значение текста amator_roma Общие вопросы C/C++ 5 14.06.2011 19:33
присвоить значение в другой dbedit alexander1111 Общие вопросы Delphi 1 19.04.2011 16:08