Показать полную графическую версию : Всё о TURBO PASCAL (обсуждение, помощь в написание программ, ошибки, Pascal ABC)
Посмотрел что то по паскалю никто ничего не пишет не обсуждает. Давайте возьмемся за это дело!
http://forum.oszone.net/forumdisplay.php?f=21&filter_string=Pascal&filter_by=title
Почти три полноценных страниц только по Pascal, не считая ещё темы с префиксом Delphi в которых тоже обсуждают Pascal, ссылаясь на указание hasherfrog
Delphi. Все вопросы, связанные с Delphi. Вопросы по Pascal (несмотря на то, что это тянет на собственную категорию) - сюда же. »
Что обсуждать? Один из лучших языков для обучения программирования, который всё ещё используют в учебных заведениях. Я не слышал, что б его использовали для крупных коммерческих проектов. Как хобби, писать чисто под ДОС, ещё да слышал такое.
Нынче CMD/BAT самый популярный в разделе Программирование (http://forum.oszone.net/forum-21.html).
Программку на логику помогите написать... Через цикл нельзя. Через if и go to - можно.
У вас в наличии имеется 200 рублей. Вам необходимо купить в общей сложности 200 предметов по следующим ценам: фломастеры - 20 рублей за упаковку, тетради общие - 10 рублей за штуку, стержни - 1,5 рубля за штуку. Вы должны потратить все деньги.
Еще одна из тех, которую через цикл нельзя=)
Составить программу перевода натурального числа из десятичной степени счисления в двоичную.
Благодарствую заранее!
http://forum.oszone.net/forumdisplay...ilter_by=title
Почти три полноценных страниц только по Pascal, не считая ещё темы с префиксом Delphi в которых тоже обсуждают Pascal, ссылаясь на указание hasherfrog
Цитата hasherfrog:
Delphi. Все вопросы, связанные с Delphi. Вопросы по Pascal (несмотря на то, что это тянет на собственную категорию) - сюда же. »
Что обсуждать? Один из лучших языков для обучения программирования, который всё ещё используют в учебных заведениях. Я не слышал, что б его использовали для крупных коммерческих проектов. Как хобби, писать чисто под ДОС, ещё да слышал такое. »
Спасибо! Принял к сведению!=)
Только алгоритм. ПисАть програмку нет желания. Да и подзабыл уже некоторые нюансы
м1:счётчик карандашей +1
проверяем карандаши*рубли (к*р), если к*р/10 целое число goto на м2
м2:счётчик тетрадей +1
200/(сумма за карандаши + сумма за количество тетрадей) если (200/(сумма за карандаши + сумма за количество тетрадей)) целое число то
вывод на экран- количество карандашей, тетрадей и часное за упаковки фломастеров (200/(сумма за карандаши + сумма за количество тетрадей)) иначе м1
в итоге карандаши 40шт, тетради 4шт и фломастеры 5шт
Только алгоритм. ПисАть програмку нет желания. Да и подзабыл уже некоторые нюансы
м1:счётчик карандашей +1
проверяем карандаши*рубли (к*р), если к*р/10 целое число goto на м2
м2:счётчик тетрадей +1
200/(сумма за карандаши + сумма за количество тетрадей) если (200/(сумма за карандаши + сумма за количество тетрадей)) целое число то
вывод на экран- количество карандашей, тетрадей и часное за упаковки фломастеров (200/(сумма за карандаши + сумма за количество тетрадей)) иначе м1
в итоге карандаши 40шт, тетради 4шт и фломастеры 5шт »
31,2 фломастера тогда что ли в одной упаковке?! Ну да денег потрачено 200 рублей..... но предметов не выходит 200.....
Мне кажется здесь надо формулу 3-х неизвестных выводить.... или я не прав?..... Просто всё перепробовал уже.... незнаю как...
Loading,
40*1.5 карандашей=60р
4*10 тетради=40р
Остаток 200-(60+40)=100р
100/20=5уп фломастеров.
Ты не понял? Если конкретноне понятен алгоритм, обоснуй.
Если счётчик не прав, то поправь его при перебегании в начало Х:=Х-1
Попробую написАть в ближайший день-два прогу. Ноадеюсь без объектов в проге :)
А вот так можно?
repeat
оператор;
оператор;
...
оператор
until выражение
Loading, если есть готовая прога, но с ошибками, выложи сюда заключённой в теге [cоde]программа[/code]
ЗЫ в словах "code" всё латиницей.
У вас в наличии имеется 200 рублей. Вам необходимо купить в общей сложности 200 предметов по следующим ценам: фломастеры - 20 рублей за упаковку, тетради общие - 10 рублей за штуку, стержни - 1,5 рубля за штуку. Вы должны потратить все деньги. »
Либо условие задачи не полностью, либо задача не корректна. Минимальная цена предмета 1.5 рубля, и даже стержней на эту сумму можно купить только 133 штуки.
Цитата Loading:
У вас в наличии имеется 200 рублей. Вам необходимо купить в общей сложности 200 предметов по следующим ценам: фломастеры - 20 рублей за упаковку, тетради общие - 10 рублей за штуку, стержни - 1,5 рубля за штуку. Вы должны потратить все деньги. »
Либо условие задачи не полностью, либо задача не корректна. Минимальная цена предмета 1.5 рубля, и даже стержней на эту сумму можно купить только 133 штуки. »
Условие полностью
Loading,
40*1.5 карандашей=60р
4*10 тетради=40р
Остаток 200-(60+40)=100р
100/20=5уп фломастеров.
Ты не понял? Если конкретноне понятен алгоритм, обоснуй.
Если счётчик не прав, то поправь его при перебегании в начало Х:=Х-1
Попробую написАть в ближайший день-два прогу. Ноадеюсь без объектов в проге
А вот так можно?
Код:
repeat
оператор;
оператор;
...
оператор
until выражениеLoading, если есть готовая прога, но с ошибками, выложи сюда заключённой в теге [cоde]программа[/code]
ЗЫ в словах "code" всё латиницей. »
Нет через repeat нельзя. Это ж тоже цикл получается.
Текста проги нет, т.к не догнал что то я её вообще.
yurfed алгоритм понятен, но видишь в чем фишка... предметов по твоему способу не выходит 200. А 200 рублей выходит.
Ну я у препода спросил, он сказал что это чисто математическая прога, здесь нужно какую то формулу 3-х неизвестных через систему вывести..... кстати не карандаши а стержни =) Один фломастер из упаковки нужно считать за 1 предмет. :closed-to
кстати не карандаши а стержни » Это существенно. Тут и копай.
предметов по твоему способу не выходит 200 »
Нужно 200 предметов на 200 рублей купить? Если каждый предмет стоит больше рубля, то как?
Всё, приехали. Дальше я молчу.
Один фломастер из упаковки нужно считать за 1 предмет. »Перечиал я ещё раз. Сколько фломастеров в упаковке? Тормозишь ты конкретно.
yurfed нет это не я это препод мне такую хрень втирал. сегодня я ему расклад дал что никак это не получится, он кричит что получится. я сказал давай сам реши, он не решил, сошлись на том что просто 200 рублей потратить, и что можно через цикл. вот так. извини что мозги парил тебе, я сам запарился, это все препод виноват!!!!!!
Можешь написать прогу?! :oszone:
PS. А еще я про системы счисления писал задание, алгоритм пояснить можешь как её написать?! :help:
И если можно алгоритм этой:
Игрок А объявляет двузначное число от 0 до 99. Игрок В меняет местами его цифры и прибавляет полученное число к сумме его цифр. Полученный результат он объявляет игроку А. Игрок А проделывает с этим числом ту же процедуру, и так они продолжают поступать поочередно, объявляя числа. От суммы чисел берется остаток от деления на 100, поэтому объявляются лишь двузначные числа. Какие числа может объявить игрок А на начальном шаге, чтобы игрок В в некоторый момент объявил число 00. :dont-know
PS. А еще я про системы счисления писал задание, алгоритм пояснить можешь как её написать?! »
В основе алгоритма операторы div и mod. Вот примерная работа, с использованием цикла.
Program dec2hex;
Uses crt;
Var i :integer; Hex, tHex :string;
Begin
Hex:='';
Write ('Enter your natural decimal number: ');
Readln (i);
repeat
Str(i mod 2,tHex);
Hex:=Hex+tHex;
i:=(i div 2);
until (i=1);
Str(i mod 2,tHex);
Hex:=Hex+tHex;
write (Hex);
End.
Это не готовая прога, хоть тут ответ и можно получить, но в зеркальном варианте. К примеру, если ввести 13 то получим 1011, правильный ответ будет 1101. Ну это уже самостоятельно. Идея такая же как и при делении в столбик, только результат деления и остачу складываем в переменную типа строчка.
С GoTo
Меняем на
Readln (i);
Label startPos
{repeat}
…
{until (i=1);}
If (i<>1) GoTo startPos
Только я у меня компиллер заладил Error in statement на Лейбл, хотя вроде по справке делал.
Помогите пожалуйста кому не трудно очень надо
В городе N имеется 100 кондитерских магазинов. Известно что в каждом из этих магазинов не более 20 видов сластей в ассортименте. Какие виды сластей имеются во всех имеющихся магазинах, существует ли магазин торгующий уникальной продукцией, перечислите 5 видов сластей которые есть в большинстве магазинов города N?(ассортимент кондитерских магазинов рассматриваете как данные перечислимого типа)
[q=Admiral]Это не готовая прога, хоть тут ответ и можно получить, но в зеркальном варианте. К примеру, если ввести 13 то получим 1011, правильный ответ будет 1101. Ну это уже самостоятельно. Идея такая же как и при делении в столбик, только результат деления и остачу складываем в переменную типа строчка.
С GoTo
Меняем на....
Зачем?! можно просто через downto...
Loading, ну вот и славненько, разобрались. Призабыл я Паскалевский downto...
Всем привет! Еще напишу блок заданий, кто что знает - набросайте текст программы please, а то я неуспеваю их писать, блин долбаная практика...... задают по 4-5 штук в день.
Массив:
Каждый солнечный день улитка сидящая на дереве поднимается на 2 см, а каждый пасмурный спускается на 1 см. В начале наблюдения улитка находилась на А - см от земли на В - метровом дереве. Имеется 30-ти элементный одномерный массив, содержащий сведения о том, был ли сответствующий день наблюдения солнечным или пасмурным. Написать прогу, определяющую местоположение улитки к концу 30-го дня наблюдения.
Массив:
В одномерном массиве, состоящем из n вещественных элементов вычислить:
1. минимальный эл-т массива.
2. сумму элементов массива, раположенных между первым и последним положительными эл-ми.Преобразовать массив таким образом, чтобы сначала распологались все элементы, равные нулю, а потом все остальные.
на CASE:
Пусть элементами равностороннего треугольника является:
1. сторона а
2. площадь s
3. высота h
4. радиус вписанной окружности r
5. радиус описанной окружности R
6.Составить прогу, которая по заданному номеру и значению соответствующего элемента вычисляла бы значение всех остальных элементов треугольника.
Цикл:
Составить программу для проверки утверждения:
результатами вычислений по формуле x*x+x+17 при 0<=x<=15 являются простые числа. Все результаты вывести на экран.
Массив:
На пульте имеется n отверстий разных диаметров. Написать прогу создания одномерного массива из номеров отверстий, в которые не пройдет шарик радиусом r. Результирующий массив не должен содержать лишних элементов.
Помогите кто чем может...
Доброго времени сутокок !! Помогите пожалуйста с написанием программ на Паскале. их всего 4е но самой мне не написать !!! Если вдруг кто сможет и будет время !!! Заранее благодарна !!! Можно сразу на почту написать
№1
Сведения о книге состоят из фамилии автора, названия книги, наименования издательства и года издания. Упорядочить данные по фамилии автора. Вывести данные о книгах, изданных заданным автором в 1998 г.
Написать программу (Pascal) для решения поставленной задачи. Программа должна быть разработана с использованием классов. Например, если в задаче речь идет об учениках, необходимо объявить соответствующий класс. В программе должен быть также объявлен массив (размещенный в статической памяти), элементами которого будут объекты некоторого класса (например, класса «Ученик»).
Примечание:
1) Все основные процедуры и функции (ввод, вывод информации) должны быть методами класса. Вне класса можно определить только вспомогательные подпрограммы (такие, как вывод меню) или подпрограммы, работающие с массивом объектов (например, поиск). Однако, если при этом выполняется более или менее сложная операция сравнения (например, на соответствие даты заданному критерию поиска), то данную операцию (сравнение) лучше оформить как отдельную подпрограмму и сделать методом класса.
2) В задачах, не связанных с использованием графики, исходные данные должны читаться из файла (не менее 10 записей). С клавиатуры может вводиться только имя файла (необязательно) и критерий поиска (если необходимо).
№2
Файл содержит информацию о дисциплинах, изучаемых студентами специальности ПИЭ. Для каждой дисциплины указаны: название, номер семестра, общее количество часов, форма итоговой аттестации (экзамен, зачет). Разработать программу, позволяющую: (1) добавлять информацию в файл; (2) удалять и редактировать информацию; (3) выводить список дисциплин по номеру семестра (упорядочить по наименованию). Примечание. Так как наименование дисциплины может быть достаточно длинным, при выборе пункта «удаление» можно выводить список всех дисциплин с порядковыми номерами и запрашивать номер удаляемой дисциплины.
Создание программ с использованием структурного подхода.
Задание: Написать программу для решения задачи. Каждая подзадача должна быть оформлена в виде отдельной подпрограммы. Программа должна быть написана без использования динамической памяти!
№3
Определить тип данных «Окружность» (должен включать координаты центра и радиус). Разработать подпрограммы для ввода информации с клавиатуры, вывода на экран, чтения/записи в файл, а также для вычисления длины окружности и площади круга, ограниченного данной окружностью.
Реализация модулей в языке Паскаль
В языке Паскаль модуль — это автономно компилируемая программная единица, оформленная по особым правилам.
Структура модуля на языке Паскаль следующая:
UNIT <имя_модуля>;
INTERFACE
<интерфейсная секция>
IMPLEMENTATION
<секция реализации>
BEGIN
<инициирующая секция>
END.
Имя файла, содержащего модуль, должно совпадать с именем модуля.
Секция INTERFACE (интерфейсная секция) содержит описания констант, типов, переменных и процедур, доступных основной программе или другим модулям.
Секция IMPLEMENTATION (секция реализации) содержит исходный код подпрограмм, а также описания, локальные для данного модуля (типы, переменные).
В инициирующей части размещаются операторы, которые исполняются до передачи управления основной программе и обычно используются для подготовки ее работы. Здесь, например, могут инициализироваться переменные, открываться файлы и т.д. Операторы инициализирующей секции выполняются всего один раз при запуске программы. Инициирующая часть может быть пропущена.
После компиляции модуля создается файл с расширением .TPU. Использование функций из модуля в программе возможно после включения в программу директивы USES <имя модуля>;.
№4
Создать класс «Линия» (внутренние переменные: координаты начальной и конечной точек, признак видимости). Разработать методы для инициализации (конструктор), рисования и удаления с экрана, а также изменения ее размера (т.е. координат точек). Используя созданный класс, составить программу для решения следующей задачи.
Выбор нужной точки экрана обычно выполняется подводом курсора к этой точке и нажатием клавиши ENTER. Иногда бывает полезно видеть и предыдущую выбранную точку — последнюю точку, зафиксированную клавишей ENTER, и новую точку, на которую указывает курсор. Для этого может использоваться, например, «метод резиновой нити».В «методе резиновой нити» один конец отрезка зафиксирован и указывает последнюю выбранную точку, второй конец перемещается в соответствии с изменением указываемой точки.
Работа с объектами.
Требования:
1) Программы на обеих языках должны состоять из модулей. Можно вначале разработать программу без модулей, а когда все ошибки будут устранены, поместить описание класса в отдельный модуль.
2) Запрещается в методах класса вызывать функции работы с клавиатурой (например getch()).Подобные функции вызывать только из главной программы.
3) Каждый класс обязательно должен включать конструктор.
Надеюсь что хоть кто то сможет полностью написать программы !!!!! Буду благодарна очень очень !!!!!!!!!
Помогите написать прогу:
Записать в фаил N чисел, введёных с клавиатуры. Считать из фаила эти числа. Найти из них максемальное число.
Ellis_Cullen
30-12-2009, 17:29
Народ,буду очень благодарна,если кто сможет помочь!))
В общем,задача такова: Найти в двумерном массиве максимальный элемент в каждой диагонали, параллельной главной.
Спасайте :)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.