Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на языке Pascal


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Асмик Гаряка
Статус: Советник
Рейтинг: 10858
∙ повысить рейтинг »
Орловский Дмитрий
Статус: Мастер-Эксперт
Рейтинг: 7175
∙ повысить рейтинг »
Гусятинер Леонид aka lamed
Статус: Академик
Рейтинг: 5676
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Pascal (Паскаль)

Номер выпуска:1239
Дата выхода:18.09.2012, 01:30
Администратор рассылки:Boriss (Академик)
Подписчиков / экспертов:66 / 79
Вопросов / ответов:3 / 7

Консультация # 14745: Уважаемые эксперты помогите! нужно составить программу на Turbo Pascal. Вот условие: Дан список, содержащий не менее 10 записей, каждая из которых имеет структуру: Ф.И.О. |Домашний адрес | Номер участка | Год рождения | ---------- |---------------|---------------|--------------| тип строка | тип строка | тип integer | 1900-2000...


Консультация # 178755: помогите пожалуйста реализовать а) алгоритм прима б) алгоритм краскала...
Консультация # 29725: Уважаемые эксперты! Подскажите, пожалуйста, с помощью какой процедуры можно вывести результаты в Паскале, например, в 4 столбика. Если можно с примерами. С глубочайщим уважением, Mary....

Консультация # 14745:

Уважаемые эксперты помогите! нужно составить программу на Turbo Pascal. Вот условие:
Дан список, содержащий не менее 10 записей, каждая из которых имеет структуру:
Ф.И.О. |Домашний адрес | Номер участка | Год рождения |
---------- |---------------|---------------|--------------|
тип строка | тип строка | тип integer | 1900-2000 |
15 символов| 20 символов | | |
Разработать программу, выполняющую следующие функции: 1)ввод данного списка в массив записей; 2)вывод массива записей на экран; 3)поиск всех граждан из списка, родившихся до 1980 года и номером участка не более 100 с выводом найденных записей на экран.

Дата отправки: 01.01.2004, 00:01
Вопрос задал: KENT
Всего ответов: 2
Страница онлайн-консультации »


Консультирует Strory:

Доброе время суток, KENT!
Ну и? Определяемся с типом:
type
  TList = record
    FIO: String[15];
    Adress: String[20];
    Numb: integer;
    Year: 1900..2000;
  end;
var
  List: array [1..100] of TList;
По пунктам 1 и 2 не вижу никаких трудностей. По второму пункту:
  if (List[i].Year < 1980) and (List[i].Numb <= 100) then выводим;

Так где ещё проблемы? ;)

Консультировал: Strory
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует sir Henry (Старший модератор):

Приветствую Вас, KENT!
Дык составляйте, ктоВам мешает?. Если возникнут трудности при составлении, будте добры описать ИХ СИМПТОМЫ, а не слать условия задачи. По условию задачи выходит, что Вы просто сами не хотите ничего делать.

Консультировал: sir Henry (Старший модератор)
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 178755:

помогите пожалуйста реализовать
а) алгоритм прима
б) алгоритм краскала

Дата отправки: 30.05.2010, 16:01
Вопрос задал: 5element
Всего ответов: 1
Страница онлайн-консультации »


Консультирует Орловский Дмитрий (Мастер-Эксперт):

Здравствуйте, 5element.
Зайдите сюда

Консультировал: Орловский Дмитрий (Мастер-Эксперт)
Дата отправки: 02.06.2010, 22:54
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 29725:

Уважаемые эксперты! Подскажите, пожалуйста, с помощью какой процедуры можно вывести результаты в Паскале, например, в 4 столбика. Если можно с примерами.

С глубочайщим уважением, Mary.

Дата отправки: 17.11.2005, 16:03
Вопрос задал: Mary
Всего ответов: 4
Страница онлайн-консультации »


Консультирует Schmak (Практикант):

Здравствуйте, Mary!
Я думаю Вам подойдёт следующее:
1) Выводите таблицу по ячейке write(t:6), в данном случае если данные в ячейке короче 6 то перед ними вставляется нескоько пробелов, так чтобы длина строки стала равна 6. Естественно вместо 6 можно подставить любое число или переменную.
2)В конце вывода каждой строки таблицы пишите Writeln;
В даннном ниже примере выводится таблица умножения, при чём каждый следующий столбец шире предыдущего на 1:

var i,j:integer;
begin
for i:=1 to 9 do
begin
for j:=1 to 10 do
write(i*j:(j+1));
writeln;
end;
readln;
end.

Консультировал: Schmak (Практикант)
Дата отправки: 17.11.2005, 16:30
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Витомский Вадим Викторович (Профессионал):

Здравствуйте, Mary!
Проще всего воспользоваться стандартной процедурой WriteLN.
Для чисел можно задавать значущее кол-во знаков после запятой, напр.
var r : Real;
begin
..
r := 1.235;
WriteLn(r:5:2);
Примечание: для целых чисел и строк используется только одно число, задающее кол-во выводимых знаков:
WriteLN(int_num:5);

Для того, чтобы разделить несколько значений промежутком, можно использовать символ табуляции #09:
WriteLn(val1:5:2,#09,val2:5:2,#09,val3:5,#09,val4:10);
Данный пример выведет 4 значения заданым форматом в 4 колонки с равномерными промежутками.
Аналогично можно использовать и другие служебные символы (почти каждый имеет свое значение).

Консультировал: Витомский Вадим Викторович (Профессионал)
Дата отправки: 17.11.2005, 17:00
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует sir Henry (Старший модератор):

Здравствуйте, Mary!
Никакой процедуры для этого, кроме как Write\WriteLn нет. В этом макросе есть специальные возможности для форматирования вывода (правда не такие мощные как в Си). Например у Вас есть массив с данными, который нужно вывести в 4 столбика:
var
arr: array[0..3, 0..5] of integer; {массив с данными}
i, j: integer; {служебные переменные}
Begin
For i:=0 To 3 Do {Вывод столбцов}
Begin
For j:=0 To 5 DO {Вывод строк}
Write(arr[i,j]:8);
WriteLn;
End;
End;
Здесь данные массива выводится на экран в 4 столбца (по количеству их в массиве). Длина каждого столбца фиксирована и равна 8 симолов.
Если Вы заглянете в хелп по Паскалю (уверяю Вас, там много интересного), то Вы увидите общий синтаксис Write\WriteLn:
WriteLn(Переменная:Ощая_длина_в_символах:Длина_части_после_запятой)
Естественно, что "Длина_части_после_запятой" относится лишь к тем типам данных у которых есть десятичная запятая. :)

Консультировал: sir Henry (Старший модератор)
Дата отправки: 17.11.2005, 17:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Whisper:

while presskey() do
begin
for i= 1 to 4 do
begin
write(); - выводишь что тебе надо, и разделители в строку, всего 4ре штуки
end;
writeln; после 4го вывода перевод строки и так до presskey()
end;

Консультировал: Whisper
Дата отправки: 18.11.2005, 09:27
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное