Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Помогите с массивами (Array типа)

Ответить
Настройки темы
C/C++ - [решено] Помогите с массивами (Array типа)

Старожил


Сообщения: 227
Благодарности: 6

Профиль | Отправить PM | Цитировать


Изменения
Автор: Cherterok
Дата: 08-02-2011
Собствено всвем привет. опять я...массивы я собственно никогда не понимал но пытался. вобщем облазил все что мог. не нашол ничего путного . везде паскаль восновном почемуто использовали. вобщем вот задачи которые нужно решить. вот что я смог набросать а дальше не особо понял
Код: Выделить весь код
#include <iostream>
#include <math.h>
using namespace std;
int main ()
{
	int array[9] = {4, 8, 5, 2, 7, 12, 11, 10, 8};
	int a, b, c, d, e, f, j, h, i;
//	Дан массив размера N. Найти минимальный из его локальных макси-мумов (определение локального максимума дано в задании Array33).
a = array[0];
b = array[1];
c = array[2];
d = array[3];
e = array[4];
f = array[5];
j = array[6];
h = array[7];
i = array[8];

cout<<a;
system("pause");
}
ниже представлены те задачи которые я вобще не понял. автор печальной книжки абрамян((

Array55. Дан целочисленный массив A размера N (≤ 15). Переписать в новый целочисленный массив B все элементы с нечетными порядковыми номера-ми (1, 3, …) и вывести размер полученного массива B и его содержимое. Условный оператор не использовать.

Array75. Дан массив размера N. Переставить в обратном порядке элементы массива, расположенные между его минимальным и максимальным эле-ментами, включая минимальный и максимальный элементы.

Отправлено: 13:16, 08-02-2011

 

Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Cherterok,
1. Очень важный первый шаг! Забываем про C, C++, Pascal и прочее!
2. Берем бумагу, задаемся(придумываем) массивы заданной длины. Грубо говоря выписываем в строку 15 цифр.
3. Проделываем заданные операции. (Перестановку, локальный максимум минимумов, нечетные номера.)
4. Пытаемся уследить, как это сделать автоматизированно. Т.е. чтобы ребенок не знающий о высших материях математики мог выполнить эту задачу.
5. Если возникли трудности, помогаем ребенку, попутно делая заметки о возможных вариантах исходных данных.
6. То что получится (схема) называется концептуальная модель. Она нужна для понимания "действия". Для понимания понятий и взаимосвязей объектов предметной области. Грубо опять же "Что взять и куда положить"
7. На основе схемы пишется математика. Как математически найти минимальный/максимальный элемент. Что его отличает от всех остальных.
Какое св-во имеют элементы стоящие между минимальным и максимальным.
и т.д.
8. Получившиеся формулы называются математической моделью задачи. Она нужна для того, чтобы любой ученик старших классов средней школы мог выполнить это задание. Мат. модель придает строгость, важность, и научность проблеме. Без нее никак.
8. А вот тут уже вспоминаем C, C++, Pascal и думаем, как перевести язык математики в язык алгоритмов.
9. Проверяем/тестируем разработанный алгоритм. Если результаты программы соответствуют требования задания, значит (см п.2) все шаги выполнены верно. Делаем вывод о правильной концептуальной схеме, математической модели, программной реализации. (Опять обращаю твое внимание, что программная реализация - последняя в этом списке)
10. PROFIT!

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:18, 09-02-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Старожил


Сообщения: 227
Благодарности: 6

Профиль | Отправить PM | Цитировать


lxa85, дело в том хай даже на бумаге. я локальные массивы не понял и перестановки. книжки не помогают т.к. я даже выписал пример с книжки и он не заработал. ну впринципе уже не так важно завтра работы сдавать...

Отправлено: 21:00, 09-02-2011 | #3


Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Cherterok, прости конечно за резкий тон, но
С какого перепугу ты дурак начал выписывать пример из книги и подсовывать его компилятору!? (Не знаю в какой среде ты пишешь) Тебе чего сказано было?
Цитата lxa85:
1. Очень важный первый шаг! Забываем про C, C++, Pascal и прочее! »
Понимаешь, просто забыть и все! Нету этого, не придумали еще. И мне совершенно до лампочки этот какой то пример с книги. Как до Юпитера вприсядку.
Цитата lxa85:
2. Берем бумагу, задаемся(придумываем) массивы заданной длины. Грубо говоря выписываем в строку 15 цифр. »
15 цифр придумать и выписать в строчку - это сложно? Это не массив? Открою тебе страшную тайну - это одномерный массив. Для пущей важности их еще векторами называют.
Вот сейчас садишься, и не выпендриваясь, молча и старательно выполняешь то, что тебе говорят. По шагам, не пропуская не единого шага! И не надо думать что мол ты умный и тут всё прозрачно. Да, оно прозрачно, но требует выполнения.
Цитата lxa85:
Проделываем заданные операции. (Перестановку, локальный максимум минимумов, нечетные номера.) »
Выписвыаешь на лист словесные определения терминов
Перестановка - это ...
Локальный максимум - это ...
Локальный минимум - это ...
Нечетные номера - это ...
И выписываешь таки засранец, потом сюда продублируешь, я проверю. Оно конечно коню понятно, что максимум - он самый большой, а минимум самый маленький. Но это не отмазка! Пишешь.
12 14 55 522 60 345 ---> 552 55 14 12 60 345
такой пример не подъемен? Ты издеваешься?!

Локальный максимум - ...
Локальный минимум - ...
Числа находящиеся между минимум и максимумом - ... , ... , ...
Вписать не достающие числа, проверить, всё ли я сделал в примере правильно.

Цитата lxa85:
Пытаемся уследить, как это сделать автоматизированно. »
Нашел нужные элементы, определил необходимые условия, выполнил условия задачи.
Это грубо, это я расписывать не буду, так как это твоя задача.
Цитата lxa85:
5. Если возникли трудности, помогаем ребенку, попутно делая заметки о возможных вариантах исходных данных. »
Не все задачи сводятся к примеру "12 14 55 522 60 345" бывают и другие. Твоя задача - найти все характерные примеры. Толи минимум сначала, толи максимум, толи минимум не один, толи максимумов трое. Толи вообще массив одинаковых чисел. Для каждого случая определить руками на бумаге - минимум, максимум и что там еще требуется.

Цитата lxa85:
6. То что получится (схема) называется концептуальная модель. Она нужна для понимания "действия". Для понимания понятий и взаимосвязей объектов предметной области. Грубо опять же "Что взять и куда положить" »
Схема где?! На основе чего нам смотреть понял ты задачу или нет? Или решил как, пардон дятел перестучать пример с учебника или методички и подогнать под свою задачу? Грубо сказать: для выпечки тортов мясорубку не используют. Каждый инструмент хорош для своего. Ну отнесись ты к этому с пониманием!
Цитата lxa85:
7. На основе схемы пишется математика. Как математически найти минимальный/максимальный элемент. Что его отличает от всех остальных.
Какое св-во имеют элементы стоящие между минимальным и максимальным. »
Даже повторяться стыдно.
Чем максимум отличается от всех остальных?!
Чем индексы элементов находящиеся между минимум и максимум отдичаются от всех остальных?!
(Что то мне начинает надъедать ключевые слова подчеркивать, ну да ладно.)
Цитата lxa85:
8. Получившиеся формулы называются математической моделью задачи. Она нужна для того, чтобы любой ученик старших классов средней школы мог выполнить это задание. Мат. модель придает строгость, важность, и научность проблеме. Без нее никак. »
Для общей картины хорошо бы здесь вспомнить понятие пересечения множеств.
Стой! В школе же должны проходить принадлежность числа к даипазону. Например 25 {принадлежит} [14; 66) от 14 включительно, до 66. Здесь все тоже самое!
Цитата lxa85:
9. А вот тут уже вспоминаем C, C++, Pascal и думаем, как перевести язык математики в язык алгоритмов. »
Заметь, красавец, сколько я всего понаписал, а к программированию еще и не притронулся. Соотв. я волен спросить а где твое? Где разобранный и расписанный пример? Шаг программирования без предварительной подготовки лишен всякого смысла. Просто лишен как таковой. А раз в нем нет смысла, то зачем он нужен? Ах задачу сдавать, ааа нууу если ставить вопрос таким образом ммм.
Вот чтобы сдать задачу и наполнить программирование смыслом необходимо выполнение всех шагов. Они как раз и наполняют програмный код смыслом. Понимаешь?
Цитата lxa85:
10. Проверяем/тестируем разработанный алгоритм. Если результаты программы соответствуют требования задания, значит (см п.2) все шаги выполнены верно. Делаем вывод о правильной концептуальной схеме, математической модели, программной реализации. (Опять обращаю твое внимание, что программная реализация - последняя в этом списке)
10. PROFIT! »
С этим все понятно. Главное выводы правильные написать. Не с потолка, а именно по тому, что выполнялось в работе.

Так, теперь давай к тому, что не понятно.
Цитата Cherterok:
я локальные массивы не понял и перестановки. »
13, 23, 77, 235, 86, 73, 43 - это локальный одномерный массив размерностью 7.
23, 13, 77, 235, 86, 73, 43 - тот же массив но с переставленными первым и вторым элементом.
13, 235, 77, 23, 86, 73, 43 - предидущий массив, но поменяны 2ой, 4ый.
"На пальцах" это и есть перестановка.
Что еще не понятно?

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:16, 09-02-2011 | #4


Старожил


Сообщения: 227
Благодарности: 6

Профиль | Отправить PM | Цитировать


lxa85, бумага не причом. пеерставить числа местами, определить его размер и подписать другой буквой это легко. просто ты както учился. я не знаю как. нас же не учат. тыкнули и говорят шоб послезавтра было. остальное наш геморой.
локальный максимум в гугле меня убил. нашол 2 примера (1 по с++ в 2 строчки вобще не о чом. и 2 простое уровнение на сайте)
если я понял число между миинмумом и максимумом это будит так? 150, 15, 10. или я не допонял?

вообще я так думал на нечетность проверять делением на 2. но потом столкнулся с тем что что как записать условие то правильно. и замечу учусь я не на програмировании. мы учим с++ для програмирования контролеров. там масивы вобще как бы не нужны. только подачи сигналов к разным портам + промежутки...перстановку я и так понял. в ручную легко. а вот как быть когда пишу уже в самой программе. представьте что я пятикласник который впервые увидел логорифмы и интеграллы. и ему дали сразу задание

Отправлено: 23:16, 09-02-2011 | #5


Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Чертенок, я тебя убью.
Я тебе не про программирование, я тебе про математику рассказываю. Класс так за 8ой средней школы.
Вот чтобы послезавтра было ты покажи решение задачи без программирования. Тогда будет понятно, что задачу ты решил, и всё у тебя есть. Тогда, и только тогда любой программист зашедший в тему, не прилагая усилий раздумий "за тебя" напишет программу. Но для этого им нужна математика.
А ты уперся и всё.
Пиши по пунктам, пиши. Забудь про гугл, он тебе сейчас не помошник.
Думай, думай и еще раз думай.
Цитата Cherterok:
представьте что я пятикласник который впервые увидел логорифмы и интеграллы. и ему дали сразу задание »
Пока я вижу перед собой двоешника, который не знает ни алгебру ни русский язык средней школы. Без обид, но это так.
Ты можешь написать по русски действия для того, чтобы пятикласник выполнил задачу?
Чтобы он взял набор чисел, нашел min, max и сделал перестановки?

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 23:42, 09-02-2011 | #6


Старожил


Сообщения: 227
Благодарности: 6

Профиль | Отправить PM | Цитировать


lxa85, я не двояшник убить? та можно терять нечего...
ну чо берем массив А длиной 6 например. числа 1,5,4,7,8,9
перестановка будит следующая
массив Б 9,8,7,4,5,1.
если бы обьяснил мне за локальные я бы и это написал. так что я тебя еще подожду.
вывод нечетных я подразумевал делением каждого числа масива на 2 без остатка.
примерно нашол кое что for(int i=0; i<n; i++) но я не понял принцыпа.
как в с++ определить длину массива заведома это не зная я не знаю. так что просто выводим 6 и все.
русский язык я учил года 4 назад. и вобще я с украины. если учитывать что у нас родной язык украинский то считайте это моим акцентом

Последний раз редактировалось Cherterok, 09-02-2011 в 23:56.


Отправлено: 23:49, 09-02-2011 | #7


Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Те массивы, с которыми ты работаешь и есть локальные. Есть массивы более сложных структур и гораздо больших объемов. С различными способами доступа к его элементам.
Поэтому сейчас ты слово локальный пиши, но в подробности не вдавайся.
Цитата Cherterok:
вывод нечетных я подразумевал делением каждого числа масива на 2 без остатка. »
Цитата Cherterok:
Переписать в новый целочисленный массив B все элементы с нечетными порядковыми номера-ми (1, 3, …) »
Задания я за тебя читать буду? Какие нафиг деления каждого числа без остатка?
Нука реши мне задание :
A - 14, 51, 62, 72, 55, 12, 73, 87, 66, 105.
B -

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 23:58, 09-02-2011 | #8


Старожил


Сообщения: 227
Благодарности: 6

Профиль | Отправить PM | Цитировать


lxa85, то я перепутал... я первое задание не вписывал.
В - 51, 72, 12, 87, 105 . 0 же я надеюсь не учитывается? (A[0])

Последний раз редактировалось Cherterok, 10-02-2011 в 00:10.


Отправлено: 00:03, 10-02-2011 | #9


Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Cherterok, порядкового номера ноль не существует.
Опять ты лезешь в программирование! Не лезь в него!

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 00:16, 10-02-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] Помогите с массивами (Array типа)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Чтение имён папок в array AzazeLHAck AutoIt 1 30-11-2010 16:24
RAID - [решено] raid hp array configuraton utility dihlof0s Накопители (SSD, HDD, USB Flash) 9 10-06-2010 20:50
CMD/BAT - помогите с типа вирусом Putin-mode Скриптовые языки администрирования Windows 12 15-10-2008 20:46
array() slaine Вебмастеру 10 06-09-2005 18:37
array() slaine Вебмастеру 5 21-08-2005 20:31




 
Переход