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

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


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

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 394
от 09.06.2007, 07:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 254, Экспертов: 58
В номере:Вопросов: 4, Ответов: 5


Вопрос № 89836: Здравствуйте! Помогите с задачей. Нужно написать программу умножения и сложения матриц. Спасибо....
Вопрос № 89853: Уважаемые эксперты, помогоите переделать задачу. Пусть дан текст. Распечатайте те буквы, которые встречаются в каждом слове текста только один раз. Моя программа просматривает строку и выбирает нужные символы, но необходимо чтобы все слова за...
Вопрос № 89871: к вопросу 89772 ( http://rusfaq.ru/?Step=info&Action=Question&ID=89772 ): Мне удалось на входе отсортировать исходный список по языку. Я также могу получить 2-а списка, каждом из которых будет только один язык и отсортировать его по фамилии....
Вопрос № 89894: Дано 10 русских имён. Определить какие из них написаны с заглавной буквы а какие нет, и исправить на заглавные...

Вопрос № 89.836
Здравствуйте! Помогите с задачей. Нужно написать программу умножения и сложения матриц. Спасибо.
Отправлен: 03.06.2007, 18:29
Вопрос задал: Семин Борис Иванович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Устинов С.Е.
Здравствуйте, Семин Борис Иванович!

Программа умножает матрицу nхm на матрицу mхn.

program Project1;
const n=4; m=3;
var a:array[1..n,1..m] of integer;
b:array[1..m,1..n] of integer;
r:array[1..n,1..n] of integer;
i, j, k:integer;
begin
{ввод первой матрицы}
for i:=1 to n do
for j:=1 to m do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
{ввод второй матрицы}
for i:=1 to m do
for j:=1 to n do
begin
write('b[',i,',',j,']=');
readln(b[i,j]);
end;
{Собственно умножение}
for i:=1 to n do
for j:=1 to n do
begin
r[i,j]:=0;
for k:=1 to m do r[i,j]:=r[i,j]+a[i,k]*b[k,j];
end;
{вывод результата умножения}
for i:=1 to n do
begin
for j:=1 to n do write(r[i,j],' ');
writeln;
end;
readln;
end.

Я думаю, написать сложение будет не сложно :) Хотя все-же, напишу основную часть (только матрицы нужно определить одинакового размера nxm)

{собственно суммирование}
for i:=1 to n do
for j:=1 to m do
begin
r[i,j]:=b[i,j]+b[i,j];
end;


Удачи!
---------
Ждешь квалифицированного ответа? Задай правильно вопрос!
Ответ отправил: Устинов С.Е. (статус: Специалист)
Ответ отправлен: 03.06.2007, 18:39


Вопрос № 89.853
Уважаемые эксперты, помогоите переделать задачу.
Пусть дан текст. Распечатайте те буквы, которые встречаются в каждом слове текста только один раз.
Моя программа просматривает строку и выбирает нужные символы, но необходимо чтобы все слова заносились в массив, и из массива слова обрабатывались поэлементно, выбирая необходимые символы.

Приложение:

Отправлен: 03.06.2007, 19:59
Вопрос задал: Vok (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Градов Юрий Михайлович
Здравствуйте, Бураменский Максим Александрович!
var st: string;
Arr: array[1..10] of string;
i,k: integer;
A: Set of Char;
begin
ClrScr;
Writeln('Input string:');
Read(St);
k:=1;
for i:=1 to Length(St) do
begin
if St[i]<>' ' then
begin
if not (St[i] in A) then
begin
A:=A+[St[i]];
Arr[k]:=Arr[k]+St[i];
end;
end else
begin
A:=[];
Inc(k);
end;
end;
for i:=1 to k do Writeln(Arr[i]);
ReadKey;
end.
---------
Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: 10-ый класс)
Ответ отправлен: 03.06.2007, 22:50
Оценка за ответ: 5
Комментарий оценки:
Спасибо, что помогли.


Вопрос № 89.871
к вопросу 89772 ( http://rusfaq.ru/?Step=info&Action=Question&ID=89772 ):

Мне удалось на входе отсортировать исходный список по языку. Я также могу получить 2-а списка, каждом из которых будет только один язык и отсортировать его по фамилии. Однако мне надо получить 2 списка, в каждом из которых должны присутствовать разные языки, причем количество одного языка в первом списке должно быть примерно равно количеству этого же языка в другом списке: например: в исходном списке 13 немцев и 7 англичан. Тогда в первом списке я должна получить 7 немцев и 3 англичанина, а во втором списке 6 немцев и 4 англичанина. И у меня эта задача никак не получается ни из одного отсортированного по языку списка, ни из двух рассортированных по языкам списков. (Массивами мне пользоваться нельзя.) Помогите, пожалуйста.
Отправлен: 03.06.2007, 22:52
Вопрос задала: Ga1ina (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Градов Юрий Михайлович
Здравствуйте, Ga1ina!
Начало как и было:
type
TStud = record {тип записи о студенте}
Fam: string[20]; {фамилия}
Name: string[20];{имя}
Patr: string[20];{отчество}
DataBorn:string[10]; {год и месяц рождения в формате ГГГГ.ММ}
Adr: string[100]; {адрес регистрации}
Lang: string[1]; {изучаемый ин. яз.: а/н или e/g}
Info: string; {переменная с произвольными данными о студенте}
end;
type
TAr = array[1..10] of TStud;
TLst= array[1..20] of TStud;

var Stud1: TAr;//1-ый список
Stud2: TAr;//2-ой список
Lst: TLst;//общий
PStud: array[1..20] of TStud;
StTmp: array[1..1] of TStud;
CountEng, CountGrm, Count: integer;

//Вы данные сразу вводите в Read(Lst[Count].fam)...Read(Lst[Count].lang), далее
//проверка если четный англичанин(немец) в 1-й список, нечетный во 2-й
if Lst[Count].lang='e' then
begin
if CountEng mod 2 = 0 then
begin
Stud1[CountEng]:=Lst[Count];
Inc(CountEng);
Inc(Count);
end else
begin
Stud2[CountGrm]:=Lst[Count];
Inc(CountEng);
Inc(Count);
end;
end else
if Lst[Count].lang='g' then
begin
if CountGrm mod 2 = 0 then
begin
Stud1[CountGrm]:=Lst[Count];
Inc(CountGrm);
Inc(Count);
end else
begin
Stud2[CountGrm]:=Lst[Count];
Inc(CountGrm);
Inc(Count);
end;
end;
//далее сортируете и выводите
---------
Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: 10-ый класс)
Ответ отправлен: 04.06.2007, 00:52
Оценка за ответ: 5
Комментарий оценки:
хороший ответ, помогло в решении задачи


Вопрос № 89.894
Дано 10 русских имён. Определить какие из них написаны с заглавной буквы а какие нет, и исправить на заглавные
Отправлен: 04.06.2007, 05:35
Вопрос задал: Иванов Максим Андреевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Вологин Всеволод Вячеславович
Здравствуйте, Иванов Максим Андреевич!

Прога работает с таблицей ASCII

Program Figure;
Uses Crt;
Const
alfa_1 = [' '..'Ї'];
alfa_2 = ['а'..'п'];
Var
st : String;
I: Integer;
mas : array[1..10] of string;
Begin
Clrscr;
For i:=1 to 10 do
Begin
Write('Введите имя --> ');
ReadLn(Mas[i]);
End;
For i:=1 to 10 do
Begin
St:=Mas[i];
If st[1] in alfa_1
Then
Begin
St[1] := Chr(Ord(St[1])-32);
Mas[i] := st;
End;
If st[1] in alfa_2
Then
Begin
St[1] := Chr(Ord(St[1])-80);
Mas[i] := st;
End;
End;
Writeln('Результат --> ');
For i:=1 to 10 do
Write(' ',Mas[i]);
ReadKey;
End.


---------
Это круто - машина состояний с бесконечным циклом
Ответ отправил: Вологин Всеволод Вячеславович (статус: 2-ой класс)
Ответ отправлен: 04.06.2007, 07:09

Отвечает: Градов Юрий Михайлович
Здравствуйте, Иванов Максим Андреевич!
Эта тема уже рассматривалась, пройдите по этой сслылке:
http://rusfaq.ru/?Step=info&Action=Question&ID=89589
---------
Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: 10-ый класс)
Ответ отправлен: 04.06.2007, 12:30


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное