Часовой пояс: UTC + 3 часа




Куратор(ы):   Lord_of_Darkness   



Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 985 • Страница 32 из 50<  1 ... 29  30  31  32  33  34  35 ... 50  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Убедительная просьба ко всем, кто выкладывает исходники:
1. Обязательно пользуйтесь тэгом code (иначе очень трудно читать)
2. Старайтесь делать отступы

Если вы хотите чтобы вам помогли в написании программы, внятно излагайте задание!

Прежде чем задать вопрос, воспользуйтесь учебником


Возможно, что нужная вам программа уже написана, поэтому советую просмотреть список здесь и здесь

Отредактировано куратором: Lord_of_Darkness. Дата: 07.07.2006 19:36



Партнер
 



Последний раз редактировалось Oaip 16.10.2007 23:17, всего редактировалось 1 раз.

 

Куратор темы
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
Oaip
честное слово, я уже наверное десяток подобных программ тут выкладывал. По крайней мере разложение числа на цифры в этой теме уже освещалось несколько раз. Ну а подсчитать какие цифры сколько раз встречаются, думаю, труда не составит.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Junior
Статус: Не в сети
Регистрация: 12.11.2006
Lord_of_Darkness
Спасибо за помощь, только не могли бы Вы, если не сложно, написать вкратце коментарии к задаче на строки? Все-таки хочется разобраться что к чему, а не бездумно переписать.
Код:
var
  // набор разделителей слов в предложении
  delimiters : set of char = [' ', ',', '.'];
  // входная строка
  inputString : string;
  i, inStrLen : integer;
  // массив, в котором индекс является кодом символа (от 0 до 255)
  // а значение элемента массива - количество раз, которое символ с кодом
  // индекс встречается в окончании слов.
  symbols : array [0..255] of integer;

begin
  // ввод строки
  write('write text here : ');
  readln(inputString);
  // обнуление значений элементов массива
  for i:=0 to 255 do symbols[i]:=0;

  i:=2;
  // получение длины строки
  inStrLen := Length(inputString);
  // проход по всем символам строки
  while i <= inStrLen do
  begin
    // если текущий элемент является разделителем
    if inputString[i] in delimiters then
       // а предыдущий им не является
       if not (inputString[i-1] in delimiters) then
          // значит этот предыдущий символ - последняя буква слова
          // следовательно нужно увеличить на единицу элемент массива
          // с индексом, соответствующим коду символа в таблице ASCII
          inc(symbols[ORD(inputString[i-1])]);
    inc(i);
  end;

  // проверяем последний символ строки
  if not (inputString[inStrLen] in delimiters) then
     // если это не разделитель, то проводим ту же операцию
     inc(symbols[ORD(inputString[inStrLen])]);

  inStrLen := 0;
  // пробегаем по массиву для поиска элемента с макс. значением
  for i:=0 to 255 do
    if symbols[inStrLen] < symbols[i] then
       inStrLen := i; // запоминаем его индекс
 
  // если максимум найден (т.е. была введена не пустая строка и не
  // строка, состоящая из одних разделителей
  if inStrLen > 0 then
     // то выводим символ, встречающийся чаще всего в конце слов.
     writeln('Symbol is "' + CHR(inStrLen) + '"')
  // иначе выводим сообщение о некорректности введенных данных.
  else writeln('Error. Input data invalid.');

  readln; // задержка до нажатия Enter

end.


Добавил комментарии. Lord_of_Darkness
Отредактировано куратором: Lord_of_Darkness. Дата: 15.10.2007 18:42


 

Есть такая задчка: создать множество из элементов типа Char, конец ввода обозначить "z". Найти во множестве элемент с минимальным номером в таблице кодов и распечатать элементы множества в алфавитном порядке. Проверять ее займет время,так что может ктонить решит по своему просто проверить
Код:
 
Uses
 Crt;
Var
s: set of Char;
ch, rejim:Char;
 Procedure Konstr
  begin
  writeln('множество конструируется из символов 'a..z');
  writeln;('введите элементы множества');
  s:=[];
  readln(ch);
  while True do
   begin
   s:=s+[ch];
   if ch='z' then
   Exit;
   end;
  end;
 Procedure ManS;
  begin
  ch:=' ';
  while not(ch in S) do
  ch:=Suce(ch);
  writeln('элемент с минимальным номером равен ',ch);
  end;
 Procedure Rasp;
  var
   c1:char;
   begin
    for c1:='a' to 'z' do
    if c1 in s then
    writeln(c1);
   end;
   Begin
   Clrscr;
   while true do
   begin
   writeln('1-создание');
   writeln('2-поиск элементов с минимальным номером');
   writeln('3-вывод элементов множества');
   writeln('4-выход');
   readln(rejim);
   case rejim of
    '1':Konstr;
    '2':Mins;
    '3':Rasp;
    '4':Halt;
   end;
   readkey;
   end.


 

Junior
Статус: Не в сети
Регистрация: 12.11.2006
Lord_of_Darkness Спасибо за помощь :)
Меня теперь интересует теоретический вопрос насчет процедур. В каких случаях нужно писать var в процедуре, а в каких не нужно, например:
Procedure pro1(VAR a:integer) и Procedure pro2(a:integer) ?


 

Куратор темы
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
PERES var, если в теле процедуры или функции этот параметр будет изменятся и на выходе нужно получить именно измененный параметр. Если не нужно менять параметр, то var не писать, либо даже явно указать const.

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Junior
Статус: Не в сети
Регистрация: 24.11.2006
Откуда: г. Самара
Всем привет. У меня вопрос такой.
Есть ли в паскале функция RND как в Бейсике и как ей пользоваться?
В учебнике про это ничего нет.

_________________
Вся сила в проводах!


 

Member
Статус: Не в сети
Регистрация: 05.12.2005
Откуда: Rostov-on-Don
cwhs Прописываешь до использования функции вызов генератора
Код:
randomize;

Затем можешь использовать функцию
Код:
x=random(y);
, где х получит случайное целое значение от 0 до y(y>0)

_________________
Intel Inside ;-)


 

Junior
Статус: Не в сети
Регистрация: 24.11.2006
Откуда: г. Самара
Спасибо.
Добавлено спустя 1 час, 57 секунд
еще вопрос :)
Имеем:
Код:
а:=a+1;
b:=b+2;

Нужно организовать одновременное сравнение a и b. Например:
Код:
If a>5 and b=10 then......

Я раньше (оч давно) програмировал на Бейсике, а в Паскале когда я так пишу компилятор ругается.

_________________
Вся сила в проводах!


 

Member
Статус: Не в сети
Регистрация: 05.12.2005
Откуда: Rostov-on-Don
cwhs Забыл скобки, а они в Паскале обязательны при написании сложной логической конструкции.
Надо так -
cwhs писал(а):
If (a>5) and (b=10) then

_________________
Intel Inside ;-)


 

Junior
Статус: Не в сети
Регистрация: 24.11.2006
Откуда: г. Самара
а-а-а....вот оно что.....СПАСИБО!

_________________
Вся сила в проводах!


 

Member
Статус: Не в сети
Регистрация: 30.09.2005
Откуда: Кемерово
Помогите решить задачу( TP 7.0). Или напомните как цикл делоть с шагом в 100.

Плотность воздуха убывает с высотой h по закону: . Считая, что =1.29 кг/м3, z=1.25*10-4 1/м, напечатать таблицу зависимости плотности от высоты для значений от 0 до 1000 м, с шагом 100 м.

_________________
Я бегу от себя от этой жуткой реальности. В нормальном состоянии я чую прифкус ненормальности....


 

Куратор темы
Статус: Не в сети
Регистрация: 03.01.2004
Откуда: Питер
AMD[k10]
Код:
h:=0;
while h<=1000 do
begin
  { расчет плотности для h }
  h:=h+100;
end;

_________________
Здесь так мало тех, с кем легко говорить,
Еще меньше тех, с кем не страшно молчать (c)


 

Member
Статус: Не в сети
Регистрация: 03.01.2005
Откуда: Из России
Привет всем... народ, пожалуйста, кто чем может помогите решить 2 простейшие задачки...пожалуйста...

Задача В
Имя входного файла: b.in
Имя выходного файла: b.out
Максимальное время работы на одном тесте: 1000 миллисекунд
Максимальный объем используемой памяти: 4096 килобайт
Незнайка записал натуральное десятичное число. Сможет ли Знайка переставить некоторые цифры местами и прибавить получившееся натуральное число (не начинающееся с нуля) к исходному так, чтобы сумма содержала только цифры "9"?
Формат входных данных
Данное число (не более 2001 знаков).
Формат выходных данных
Число -1 или число с переставленными цифрами.

Задача С. Таблица
Имя входного файла: c.in
Имя выходного файла: c.out
Максимальное время работы на одном тесте: 1000 миллисекунд
Максимальный объем используемой памяти: 4096 килобайт
Незнайка записал в таблицу N*N клеток целые числа от 1 до N (каждое - по N раз). Знайка хочет узнать, сколько среди чисел от 1 до N встречается в каждой строке ровно по одному разу.
Формат входных данных
В первой строке - число N (не больше 100), в следующих N строках - таблица, записанная Незнайкой.
Формат выходных данных
Количество чисел, встречающихся в каждой строке по одному разу.


 

Есть такая задача,которую решить надо с помощью unit-ов и процедур...Помогите решить или натолкните на пральный ход...
Дана последовательность чисел: a1,a2,...,an. Проверить, верно ли, что каждый член этой последовательности больше его номера.


 

Доброго времени суток всем, попалась мне задачка. Сам не осилил..Поможете?
Расписание движения n маршрутов автобусов по m остановкам города в течении 1 часа внесено в таблицу размерностью N x M. Считаем что каждый автобус может побывать на какой либо остановке только один раз. Значение "0" в таблице обозначает, что автобус на этой остановке не останавливается. Определить, есть ли маршруты на которых не встретятся ни одна пара автобусов; автобусы каких маршрутов встретятся на одной остановке


 

Member
Статус: Не в сети
Регистрация: 08.04.2006
Откуда: Сибиряк Я
Блин паскаль уже сниться начал..... Люди выручайте есть у кого код какой либо игрушки на паскале, время на написание не хватает, а без игры и экзамена нет! Если кому то понадобяться задачи из курса университета пишите в личку чем смогу тем помогу! А вот с игрулей напряг помогите plz.....

_________________
С уважением Smert-nik!


 

Помогите решить 2 задачки на Паскале...plz.. Они вроде бы не сложные, но решить не могу! ПОЖАЛУЙСТА выручите! :)

1. Вычислить количество слов в каждой из последовательно-стей А, В, С.
Для вычисления количества слов в произвольной последователь-ности использовать самостоятельно разработанную процедуру.

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

P.S. если можно то желательнее поскорее :)


 

Member
Статус: Не в сети
Регистрация: 29.05.2006
Откуда: Кобрин.BY
Фото: 2
Постройте на экране компьютера две окружности радиусов R1 и R2, разных цветов, имитируя движение одной окружности по другой.
Буду благодарен за помощь.

_________________
L-B-H Xtreem Team|Belarus - присоединяйся к нам!


 

Member
Статус: Не в сети
Регистрация: 10.02.2005
Когда компилирую программу, Паскаль выделяет строчку с масивом зеленым цветом.
Что это означает


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 985 • Страница 32 из 50<  1 ... 29  30  31  32  33  34  35 ... 50  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan