Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Object Pascal: кроссплатформенные технологии > Задания Pascal. Поделитесь....


Автор: zetpilot 16.2.2006, 09:57
В целях изучения нового языка хотелось бы не просто читать книгу, ну и уже опробовать свои силы.

У кого нидубь есть интересные задания по Паскалю поделитесь если не жалко.

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

За ранее благодарю.

Автор: ~FoX~ 16.2.2006, 10:10
Весь раздел по паскалю одни сполшные задачи smile Есть центр помощи, там их еще больше
На тебе для начала:
1. Пользователь вводит две строки, например "Best stage in the story" и "st".
Определить и вывести на экран сколько раз вторая строка встречается в первой.
2. Найдите самое длинное слово в предложении, введённом пользователем.
3. Пользователем введены два слова через пробел. Надо поменять их местами в строке.

Задачи из школьной вроде программы.

Автор: Palladin 16.2.2006, 12:58
Вот тебе задачка не очень сложная но всёже:
Шестизначное число называется “счастливым”, если у него сумма первых трех цифр равна сумме последних трех цифр. Подсчитать количество “счастливых” шестизначных чисел, у которых суммы трех цифр равны 13.


Напиши здесь результат, я скажу правильно или нет

Автор: Ozzя 16.2.2006, 16:16
http://www.tomsk.ru/Books/informatica/practice/index.html

Автор: zetpilot 17.2.2006, 06:52
значит программа запрашивает цифру, а после введения цифры вылазиет следующие:

2 то

111
121
111

если 3 то
11111
11211
12321
11211
11111

....если 7
1111111111111
1111112111111
1111123211111
1111234321111
1112345423111
1123456543211
1234567654321
1123456543211
1112345423111
1111234321111
1111123211111
1111112111111
1111111111111

в любом случае со всех сторон должны быть единицы
создатель уверяет, что решение можно найти с помощью 2-ух циклов for

Автор: Innuendo 18.2.2006, 19:15
Ну игру в слова все знают. Первая буква слова это последняя буква слова соперника.
с файла words.in считывается последовательность слов (каждое слово- 1 строка) и последовательность до 50 000).
В файл words.out надо вывести самую большую цепочку "игры в слова" из полученных слов.

Автор: NewDima 20.2.2006, 12:20
А как на это посмотришь:
в файле даны размеры двух параллелипипидов:
например 3 6 2
и второго
например 1 1 1
Первый параллелипипед по всем измерениям больше второго или равен.
на экран с помощью символов *, /, -, | вывести изображение, представляющее первую фигуру, из которой вырезана вторая
например:

Input: 3 5 3
1 2 1


Output:

*-----*
/ /|
/ / |
/ *--* |
/ /| | |
*-**--* |
| |/ / /
| *--* /
| |/
*-----*

Добавлено @ 12:21
извиняюсь, пробелы то не отображаются, ну что поделаешь. Может так понял? smile
Добавлено @ 12:24
.....*-----*
..../...... /|
.../ ....../ |
../ .*--* .|
./ ./| ...| |
*-**--* |
| .|/ ../. /
| .*--* /
| ......|/
*-----*
Так лучше?

Автор: Innuendo 20.2.2006, 16:17
интересное задание smile
но рисунок как-то не очень впечатлил? можешь нарисовать в ворде к примеру и сделать скрин?
ну вроде понятно- жто прямые и косые стороны, а звёздочки это узлы...
вторая фигура вырещана по центру?

Автор: globus0nahok 21.2.2006, 13:53
такая задачка: вывести на экран все последовательности из p положительных
целых чисел, у которых i-ый член не превосходит i. P вводится с клавы.

Автор: armageddon 21.2.2006, 16:15
задачка:
вывести числа до n такие, что числа делятся на свои знаки
например(1-9,11,12,15);
13 не делится на 3 поэтому мы её не выводим
надеюсь задание ясно
(из задач 9 класса фмл )

Автор: Innuendo 21.2.2006, 16:35
делятся на свои цифры?
так это не так сложно...
мой покойный учитель информатики в 7 классе дал мне задачку найти числа Армстронга в заданном диапозоне...
Интересные числа.. я потом писал работу по нахождению особых чисел в диапозоне(просто бывают очень интересные числа). так вот:
Число армстронга: это сумма всех его цифр в степени кол-ва цифр...
Помню только одно: 153 = 1*1*1+5*5*5+3*3*3 = 1+125+27 = 153 smile

Автор: armageddon 23.2.2006, 22:21
innuendo:
я не спорю, что это не так уж сложно,
но в целях изучения подойдет
zetpilot:
тебя задачи о чем больше интересуют?

Автор: SoWa 23.2.2006, 22:34
Я понял, сюда кладем задачи?
Тогда в раздел Занимательные задачи перенести тему.

Задача, простая:
Найти, сколько нулей в конце числа:
1^n + 2^n + 3^n + 4^n

Сложнее
1^n + 2^n + ... + n^n
(Я еще не решил)

Автор: Innuendo 23.2.2006, 23:07
SoWa,
то есть?
пользователь заводит n. Производится действие, и сколько нулей в конце у полученного результата?

Автор: Guedda 24.2.2006, 13:39
Да. Именно так. Это, конечно, простое задание.

Автор: Innuendo 24.2.2006, 19:21
Цитата(SoWa @ 23.2.2006, 22:34 Найти цитируемый пост)
ложнее
1^n + 2^n + ... + n^n
(Я еще не решил)

я попробовал:
Код

         program new;
uses crt;
procedure MyPower(var a:longint; power:integer);
var i:integer;
    a2:longint;
 begin
 a2:=a;
  for i:=2 to power do
    a:=a*a2;
 end;
 var
  n,i:integer;
  s,x:longint;
  begin
   clrscr;
    s:=0;
    write('Vvedite n: '); readln(n);
     for i:=2 to n do
      begin
       x:=i;
       MyPower(x,n);
       s:=s+x;
      end;
      s:=s+1;
      writeln(s);
   readln;
  end.


только вот когда завожу n больше чем 12, то получается уже отрицательное значение- то есть longinta не хватает.. Проверил с 2-кой и тройкой(ну посчитал сам), вроде прально выдаётsmile

Автор: SoWa 24.2.2006, 22:57
Первое- халява.
А второе? Я его еще не решил, ибо на ходу выдумал smile

Автор: Innuendo 24.2.2006, 23:26
ну первое я не начинал (во второе введи n=4, и получишь первый номер, если n=4)smile
а вот второе предложил решение.. но вот говорю, что когда заводишь n больше 12, то выходит за рамки longint'а smile

Автор: NewDima 27.2.2006, 08:38
Цитата

вторая фигура вырещана по центру?

Формулируешь непонятно. она вырезана из верхнего ближнего к нам угла справа

Автор: Innuendo 27.2.2006, 15:33
я опечатался... не "вырещана", а вырезана... Ок.. теперь понятно. веррхний, правый юлижний угол.

Автор: SoWa 27.2.2006, 20:35
Цитата(Innuendo @ 24.2.2006, 23:26 Найти цитируемый пост)
то выходит за рамки longint'а

smile Это по детски- решать перебором. Надо алгоритм найти.

Автор: Innuendo 28.2.2006, 00:48
ааа.. блин, я просто условие не так прочёл smile
там спрашивается сколько нулей... тогда да.. можно не вычисляя само число это делать... но вот тока как? ну подумаем)

Автор: Akina 28.2.2006, 09:03
Цитата(Innuendo @ 28.2.2006, 01:48 Найти цитируемый пост)
но вот тока как?

идея (в Паскалях не силен, не помню как получить остаток от целочисленного деления):

Код

digit := 1;
for i := 1 to n do
begin
  digit := digit * n;
  dec := digit / 10;
  digit := digit - dec * 10;
end;

Автор: Ozzя 28.2.2006, 09:51
Цитата(Akina @ 28.2.2006, 09:03 Найти цитируемый пост)
не помню как получить остаток от целочисленного деления

mod

Автор: Palladin 2.3.2006, 00:33
Парни вот нашёл интересные задачки 2 штуки:

ЗАДАЧА №1 "Гепотеза Гольтбаха"


В 1772 году немецкий учёный Кристиан Гольдбах выдвинул предположение, езвестное как гепотеза Гольдбаха:любое чётное число, начиная с 4, можно представить в виде суммы двух простых чисел.
Давайте убедимся в справедливости гипотезы Гольдбаха для чисел, не >20
4=2+2
6=3+3
8=3+5
10=3+7=5+5
12=5+7
14=3+11=7+7
16=3+13=5+11
18=5+13=7+11
20=3+17=7+13


Как видно, некоторые числа могут быть представлены в виде суммы двух простых несколькими способами. Из всех возможных разложений произвольного чётного числа выберем наименьшее простое число. Среди раобраных примеров это будут: 2для 4, 5для 12 и18, 3 для всех остальных чисел. определить наибольшее число из наименьших простых состовляющих для всех чётных чисел от 4 до N


Задача№2 "Верёвочный телеграф"

Тимур и его друзья, приехав летом на свои дачи, решили устроить на время своего отдыха игру. они организовали команду, чтобы тайно помогать жителям дачного городка в их повседневных делах. Дачный городок- довольно большой, и дома, в которых живут друзья Тимура, расположены далеко друг от друга. Как быстро передавать друг другу сообщения? Как собирать ребят на совет? тимур решил проложить верёвочный телеграфф, который связал бы все домики, в которых живут ребята из его команды.
Всего домиков N. По карте ребята вычислили координаты каждого дома(Хi,Yi) в целых числах и выписали на бумаге. ЗА единицу измерения координат они взяли один метр. Однако возник вопрос, какие домики нужно соединять верёвочным телеграфом, чтобы связь была между всеми домами, а общая длинавсех верёвок была как можно меньше?

Определить по заданному кол-ву домиков и их координатам минимальную общую длину всех верёвок, соединяющих все домики между собой!?

P.S. Ну как задачки, плизз варианты решения засветите, а то мы в группе решали, из 24 человек решило 4 и у всех разный подход был к каждой из задач

smile smile smile smile smile smile smile smile

Автор: IamDreamer 5.3.2006, 19:32
Задача: Даны 2 числа (неважно целые или другие). Нужно присвоить первому числу значение второго, а второму - первого, короче поменять, но без использования третьей переменной.

Автор: SoWa 6.3.2006, 06:03
IamDreamer, ерунда smile
Код

a:=a+b;
b:=a-b;
a:=a-b;

Вот и все!

Автор: IamDreamer 6.3.2006, 12:33
Цитата(SoWa @ 6.3.2006, 06:03)
IamDreamer, ерунда smile
Код

a:=a+b;
b:=a-b;
a:=a-b;

Вот и все!

Когда мне эту задачу дали, способ решения у меня был тот же. Никто не говорил, что задача сложная.

Автор: Aisena 8.3.2006, 02:32
Воть..задачка...на Паскале... smile

Работа с текстовым файлом (форматированный и не форматированный ввод). Вывод на внешние устройства.
Создать текстовый файл, содержащий строки информации смешанного типа (числовые и строковые; 5-6 строк). Надо считать информацию из текстового файла в массив записей, а затем вывести эту информацию в табличном виде по желанию пользователя на: экран, принтер, в новый текстовый файл, добавить в конец исходного файла, выход.
Блок действия по выводу должен быть единственным (через процедуру).

Автор: SoWa 8.3.2006, 06:18
Aisena, И это задача?! Тут интересные математические задачи выкладываем!

Автор: Aisena 9.3.2006, 02:08
SoWa...могбы и помочь..раз для тебя это даже не задача..

Автор: ~FoX~ 22.3.2006, 10:31
Цитата(RooR @ 2.3.2006, 01:33 Найти цитируемый пост)
Задача№2 "Верёвочный телеграф"

Тимур и его друзья, приехав летом на свои дачи, решили устроить на время своего отдыха игру. они организовали команду, чтобы тайно помогать жителям дачного городка в их повседневных делах. Дачный городок- довольно большой, и дома, в которых живут друзья Тимура, расположены далеко друг от друга. Как быстро передавать друг другу сообщения? ..............


Элиментарная задача на поиск кратчайшегоь пути в графе.... Тем по этому вопросу полно.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)