alyayla Публикувано Октомври 1, 2013 Report Share Публикувано Октомври 1, 2013 Здравейте!Вчера се заех със задача, в която потребителят трябва да въвежда някакъв брой произволни числа, които после да бъдат подредени по големина. Самата програма я направих не особено трудно, но когато реших да го напиша като хората, изпаднах в неприятна ситуация: не знам как да декларирам масива! Всичко, което прочетох, изисква да се знае броят на елементите в масива, а моите трябва да бъдат произволни. Има ли изобщо начин това да се направи в Pascal?Благодаря предварително.Мария Цитирай Link to comment Сподели другаде More sharing options...
melmak Публикувано Октомври 1, 2013 Report Share Публикувано Октомври 1, 2013 Здравей! Най-общо казано не. Няма много изискан начин това да се направи изобщо в процедурните езици.Проблемът е свързан с алокирането и адресирането на клетки в паметта. Начинът е да се задели достатъчно голямо парче памет и то да се използва като масив. Понеже е повече занимание, обикновенно в уводните курсове по програмиране се прави достатъчно голям масив, а потребителя се ограничава да въведе равен или по-малък брой елементи с които да работи. В обектните езици изобщо не се ползват стандартни масиви, а обекти, които много приличат на тях, но се ползват много по-лесно. Възможно е в бъдеще да създавате от "нулата" подобни лесни обекти. Впрочем по съшия начин седи и въпросът със стринговете. В Pascal вградения низ е с дължина само 255 байта със само ANSI знаци. Цитирай Link to comment Сподели другаде More sharing options...
alyayla Публикувано Октомври 1, 2013 Author Report Share Публикувано Октомври 1, 2013 Стигнах до подобен извод след като изчетох изумително количество учебници, но все пак мерси за отделеното време, трябваше някой по-разбиращ да потвърди. потребителя се ограничава да въведе равен или по-малък брой елементи с които да работи. А след като огранича елементите до n-брой такива, как ще стане с по-малък брой от зададените? Цитирай Link to comment Сподели другаде More sharing options...
melmak Публикувано Октомври 1, 2013 Report Share Публикувано Октомври 1, 2013 Прави се с отделна променлива по следния начин: - потребителя се пидканя да въведе броя на елементите с които ще работи- проверява се дали n < maxN, тоест максималния възможен брой- после в циклите за обработка, въвеждане и извеждане се използва n Например, ако имаме 5 елемнта ще подканим потребителя да въведе число 5 пъти.Хубаво е n да е променлива от цял, положителен тип, за да се избегнат излишни проверки за отрицателни стойности. Цитирай Link to comment Сподели другаде More sharing options...
alyayla Публикувано Октомври 1, 2013 Author Report Share Публикувано Октомври 1, 2013 Мерси ужасно много!!! Цитирай Link to comment Сподели другаде More sharing options...
melmak Публикувано Октомври 1, 2013 Report Share Публикувано Октомври 1, 2013 Няма защо! Поздрави и успех в начинанието. Цитирай Link to comment Сподели другаде More sharing options...
Препоръчан пост
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.