Статистика |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |
|
1383.
GS
(29.05.2007 21:22)
0
Здравствуйте! Помогите пожалуйста решить программу на паскаль. Заранее спасибо!
Путем перестановки элементов квадратной вещественной матрицы добиться того чтобы ее максимальный элемент находился в левом верхнем углу, следующий по величине в позиции (2,2) следующий по величине в позиции (3,3) и т.д. заполните таким образом всю главную диагональ матрицы (оформить в виде процедур)
Ответ: Чуть позднее сделаю - времени пока нет. Надо вспомнить про перестановки - сделаем
|
1382.
eko
(29.05.2007 18:02)
0
Здрям! Мне очень нравится Ваш сайт (нашел для себя много полезного) но очень нужно решить задачку до четверга (31.05.2007г).
Дан динамический односвязный список поле "инфо" каждого узла содержит строку, удалить все узлы содержащие симметричные строки. (если она покажется не полной, то сделайте хотяб кусок) :)
Ответ: Кто покажется неполным? Как вводить? Можно ли использовать классы, и, в частности, Borland Pascal есть дополнение Turbo Vision - с ним эту задачу решить, что два пальца ... хм.. ну очень просто. Или нужно посложнее?
|
1381.
Ирина
(28.05.2007 15:02)
0
Да, это мой учитель написал...так все же настаивать на Вашем варианте?
Ответ: Это зависит от учителя. Подумаю, посоображаю, что он имел в виду... ГМ! А УЖЕ НЕ ЗАПИСЫВАЕТ ЛИ ОН ЧИСЛО В ДВОИЧНОМ КОДЕ? Уж не перепутал ли сам, какое задание дал Вам?
|
1380.
Barkar4iK
(27.05.2007 23:21)
0
Спасибо ВАМ, оба варианта причины ошибки имели место(=
|
1379.
Алексей
(27.05.2007 00:29)
0
делаю паскаль-программу обработки табличной информации, взятой из текстового файла (надо использовать только записи паскаля) условие: багаж пассажира формируется фамилией пассажира, номером рейса, датой вылета, количеством вещей и общим весом вещей. Вывести фамилии пассажиров, багаж которых состоит из одной вещи весом не менее 30 кг и вычислить средний вес багажа всех пассажиров. попытался сделать программу без рассчета среднего веса багажа, но, увы, не работает ((( помогите, пожалуйста, решить... вот мой код: program iz9; type tablica=record fam: string [10]; nr: 1..100; dv: string [8]; kv: 0..50; ov: 1..100; end; var f1,f2:text; fam: string [10]; nr: 1..100; dv: string [8]; kv: 0..50; ov: 1..100; begin assign(f1,''vhod.txt''); assign(f2,''vihod.txt''); reset(f1); rewrite(f2); read(f1,fam,nr,dv,kv,ov); if kv=1 and ov>=30 then begin writeln(f2,fam); end. и подскажите пожалуйста, как нужно вводить данные в vhod.txt? я вводил вот так: Петров 2 19.01.05 1 40 Иванов 2 18.02.03 2 30 сидоров 3 19.03.07 2 40
Ответ: Я переделал так: -- program iz9; const max = 100; fam_max = 12; Chars: set of char = [''A''..''z'', ''А''..''п'',''р''..''я'',''ё'',''Ё''];
type TData = record day, month, year: Word; end; TPassenger = record fam: string [fam_max]; nr : Word; dv : TData; kv : Word; ov : Word; {или Real} end; VAR f1, f2:text; pass: array[1..max] of TPassenger; i, count: Integer; {число считанных пассажиров} mid_ov: Real; BEGIN assign(f1,''vhod.txt''); assign(f2,''vihod.txt''); reset(f1); rewrite(f2);
count:=0; while NOT EOF(f1) do begin inc(count); readLn(f1, pass[count].nr, pass[count].dv.month, pass[count].dv.day, pass[count].dv.year, pass[count].kv, pass[count].ov, pass[count].fam); end;
mid_ov := 0; for i :=1 to count do mid_ov:=mid_ov + pass[i].ov; mid_ov := mid_ov / count; WriteLn(''Средний вес: '', mid_ov:8:2); WriteLn(f2, ''Средний вес: '', mid_ov:8:2);
WriteLn(''Багаж из одной вещи у пассажиров:''); for i:=1 to count do if pass[i].kv = 1 then begin WriteLn(pass[i].fam); WriteLn(f2, pass[i].fam); end; flush(f2); close(f1); close(f2) end. ---- И входной файл: 2 21 02 2007 1 40 Петров 22 18 02 2007 2 30 Иванов 3 19 03 2007 1 50 Cидоров -- То есть, записывать через пробел сначала цифры, а потом фамилию
|
1378.
Ирина
(26.05.2007 20:01)
0
Привет) некоторое время назад я уже обращалась к Вам за помощью с программой "Выбор чисел". Мой учитель по информатике сказал что делать нужно по-другому и что он не может понять алгоритма(( и написал мне кусочек кода, помогите пожалуйста сделать так как требуют!:)
(Имеется n целых чисел. Написать программу выбора из них нескольких чисел, так что бы сумма выбранных чисел делилась на n.)
program one; uses crt; const N = 5; var a: array[1..N] of integer; i,j,nn: integer; p:boolean; {Массив а-это шаблон, который определяет какие элементы массива чисел включать в сумму. Каждый элемент массива а может принять только два значения : 1(включать число в сумму) или 0 (не включать число в сумму.} begin clrscr; for i:=1 to n do a[i]:=0; nn:=1; for i:=1 to n do nn:=nn*2; for i:=1 to nn-1 do begin j:=1; repeat if a[j]=0 then begin p:=false; a[j]:=1; end else begin p:=true; a[j]:=0; j:=j+1; end; until not p;
for j:=N downto 1 do write(a[j]); writeln; {распечатка значений элементов массива a} end; end.
Ответ: М... да... хороший учитель, да еще информатики Я делал другую задачу: имеется массив, из которого нужно набирать сумму. А здесь массив a даже не задается, а набирается. Это он (она) дал(а) такое? Таки здесь выводятся единички и нули, а не числа!
|
1377.
Антон
(26.05.2007 17:06)
0
По-моему нужно выбирать палиндромы из текста
Ответ: Слушай, тогда не понятно, при чем тут набор символов Sn. Или только из них может состоять палиндром? Тогда как задается этот набор?
|
1376.
Ольга
(26.05.2007 05:40)
0
Спасибо огромное! очень помогли!
Ответ: Пожалуйста, заходите еще :)
|
1375.
Антон
(25.05.2007 18:44)
0
Привет помогите с прогой.Даны натуральное число n,символы S1,...Sn.Будем рассматривать слова,образованные символами,входящими в последованность S1,...,Sn,считая при этом,что количество символов в каждом слове не превосходит 15.Найти наибольшую длину слов палиндромов.(Если палиндромов нет,то ответом должно быть число 0)Пример слов-палиндромов:кабак,шалаш.
Ответ: Нужно выбирать палиндромы из какой-то строки, текста или что? А то составить бессмысленных палиндромов можно сколь угодно. Например: "аааааааааааааааааааааааааааааа" :))
|
1374.
Елена
(25.05.2007 17:00)
0
Здравствуйте!Помогите пожалуйста с решением задачи:Составить запись:студент,с полями ФИ,год рождения и группа.Для произвольного количествастудентов вывести на экран студентов заданной группы.Очень надеюсь на Вашу помощь.Заранее спасибо!
Ответ: А как задавать, вводить группу? Наверно, есть какие-то ограничения, дополнительные требования по вводу - выводу. А так: TYPE TStudent = record Name: String[20]; ForName: String[12]; Year: Word; Group: Byte; end;
|
1373.
Ольга
(24.05.2007 15:20)
0
Здравствуйте, очень надеюсь на Вашу помощь. задачка вот какая...
Расположиим буквы русского алфавита в таблицу 6*6
012345 0абвгде 1ёжзийк 2лмнопр 3стуфхц 4чшщъыь 5эюя
Каждая буква кодируется парой цифр: 1ая-номер строки,2ая-номер столбца. Зашифровать фразу "Чем дальше в лес, тем больше дров".
Ответ: Вот посмотрите. Конечно, проще было бы вычислить положение буквы... ЗЫ: ОБРАТИТЕ ВНИМАНИЕ, ЧТО ЗДЕСЬ АПОСТРОФЫ - ОДИНОЧНЫЕ КАВЫЧКИ (ОТМЕЧАЮТ СТРОКИ, СИМВОЛЫ) ЗАМЕНЯЮТСЯ ДВОЙНЫМИ CONST mes: String = ''чем дальше в лес, тем больше дров''; var i, j, n, m: Integer; chars: array[1..6, 1..6] of Char; k: Char; founded: Boolean; BEGIN k:=''а''; dec(k); for i:=1 to 6 do begin if i = 6 then m:=3 else m:=6; for j:=1 to m do begin case k of ''е'': k:=''ё''; ''ё'': k:=''ж''; ''а''..''о'',''р''..''ю'': inc(k); ''п'': k:=''р''; ELSE inc(k) end; chars[i,j]:=k; end end; for i:=1 to 6 do begin for j:=1 to 6 do write(chars[i,j]:2); writeLn end; for n:=1 to length(mes) do begin founded:=False; for i:=1 to 6 do begin if i = 6 then m:=3 else m:=6; for j:=1 to m do if mes[n] = chars[i,j] then begin write(i:3,j:3); founded := True end; end; if not founded then write(mes[n]:3) end; WriteLn; END.
|
1372.
serega
(24.05.2007 10:45)
0
например const n=30; a:array[1..7], а не 25 - для удобства. вводим 2 3 4 5 6 7 потом вводим массив b 1 2 3 4 5 6 7 8 9 10 должен написать верно или нет. У меня проблема в том что всё время выводится "не верно"
Ответ: Решение сильно упростится, если массивы отсортировать - можно? Вот так это делается :)) А, пожалуй, и сортировать не обязательно --- const N1 = 25; N2 = 30; var a: Array [1..N1] of Integer; A_in_B_no: array [1..N1] of Integer; b: Array [1..N2] of integer;
i, j: Integer; IsTrue, A_in_B: Boolean; BEGIN for i:=1 to N1 do begin a[i]:=i+2; write(a[i]:5) end; writeLn; for i:=1 to N2 do begin b[i]:=i; write(b[i]:5) end; WriteLn; for i:=1 to N1 do A_in_B_No[i] := 0; i:=1; for i:=1 to N1 do begin j:=1; A_in_B := False; while (j < N2) and (not A_in_B) do begin if a[i] = b[j] then begin A_in_B := True; A_in_B_No[i]:=j; break end; inc(j); end; end; {Если хотя бы где 0 - значит такого A нет в B} for i:=1 to N1 do if A_in_B_no[i] = 0 then begin WriteLn(FALSE); Halt(0) end; {А теперь проверяем второе условие} for i:=1 to N1-1 do for j:=i+1 to N1 do if A_in_B_no[i] > A_in_B_no[j] then begin {вот оно - нарушение} WriteLn(FALSE); Halt(0) end; WriteLn(TRUE); END.
|
1371.
Никита
(23.05.2007 18:23)
0
помогите, пожалуйста, решить задачу...
багаж авиапассажира характеризуется фамилией пассажира, номером рейса, датой вылета, количеством вещей и общим весом вещей. Вывести фамилии пассажиров, багаж которых состоит из одной вещи весом не менее 30 кг, и вычислить средний вес багажа всех пассажиров.
ввод/вывод данных через текстовые файлы, код должен быть по минимуму простым, никаких премудростей
буду очень благодарен...
|
1370.
Barkar4iK
(23.05.2007 18:06)
0
Здраствуйте! Помогите, плиз, с проблемой! При использовании модуля работы в графическом режиме(uses graph), выдает ошибку,что не найден файл graph.tpu,хотя он преспокойно лежит в папке Units, уже устанавливала разные версии Паскаля,но все равно одна и та же ошибка вылетает.Сама программа вроде корректно составлена,на других компах работает. Курсовую надо писать,а тут так...:(
Ответ: Посмотрите, как у Вас описаны пути к модулям: Options -> Directories -> Unit directories (Туда запишите полное имя папки, где модули) Либо второй возможный вариант связан с тем, что Паскаль, он ДОСовский и длинных имен не понимает. То есть - 8 букв в любом имени папки и без пробелов
|
1369.
serega
(23.05.2007 08:50)
0
Привет! Помогите пожалуста сделать задачку: "Даны натуральное число n, целые числа a1,...,a25, b1,...,bn. Среди a1,...,a25 нет повторяющихся чисел, нет их и среди b1,...,bn. Верно ли, что все члены последовательности a1,...,a25 входят в последовательность b1,...,bn и при этом а1 встречается в последовательности b1,...,bn не позднее, чем а2, а2 - не позднее, чем а3, и т.д.?"
Ответ: Привет. Думаю и никак не пойму условия задачи: 1) как задается n? Фиксированное? 2) покажи пример того, что должно получиться
|
|
|
|