Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2007, 18:13   #1
Nook
 
Регистрация: 18.01.2007
Сообщений: 5
По умолчанию TURBO PASCAL Сложная задачка

Помогите написать программу для сложения двух комплексных чисел, записанных в алгебраической форме. Переменные заданы в переменных типа запись.
Nook вне форума Ответить с цитированием
Старый 18.01.2007, 19:03   #2
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Вот код. Предусматривает возможность ввода как с пробелами, так и без. Считает вроде бы правильно (если входные данные верны). Единственное несоответствие - переменные не в записях записаны. Тут уж сам переделай, ОК?
Код:
program z1;
var 
    a,b, a2, b2, s, s2: string;
    a1, b1, a11, b11, i, x, z, k: integer;
begin
k:=1;
i:=1;
x:=1;
z:=1;
write ('Введите 1-ое слагаемое: ');
readln (s);
write ('Введите 2-ое слагаемое: ');
readln (s2);
while s[i] <> ('+' or ' ') do
begin
a[i]:=s[i];
i:=i+1;
end;
while s[i] = (' ' or '+') do
i:=i+1;
while s2[k] <> ('+' or ' ') do
begin
b[k]:=s2[k];
k:=k+1;
end;
while s[k] = ('+' or ' ') do
k:=k+1;
while s[i] <> ('i') do
begin
a2[x]:=s[i];
x:=x+1;
i:=i+1;
end;
while s2[k] <> ('i') do
begin
a2[z]:=s2[k];
z:=z+1;
k:=k+1;
end;
a1:= val(a);
b1:= val(a2);
a11:= val(b);
b11:= val(b2);  
write ('Сумма = ', a1+a11, ' + ', b1+b11,'i');
end.

Последний раз редактировалось Flash_; 18.01.2007 в 19:16.
Flash_ вне форума Ответить с цитированием
Старый 18.01.2007, 19:56   #3
Nook
 
Регистрация: 18.01.2007
Сообщений: 5
По умолчанию TURBO PASCAL 7.0 сложное задание

Помогте написать программу для ввода с клавиатуры в переменную A типа массив матрицы размером 10х10. При вводе пользователь должен видеть индексы вводимого элемента, например, “А[2,5]=”.



совсем не могу
Nook вне форума Ответить с цитированием
Старый 18.01.2007, 20:32   #4
Nook
 
Регистрация: 18.01.2007
Сообщений: 5
По умолчанию По задачке

Хорошо спасибки
Nook вне форума Ответить с цитированием
Старый 18.01.2007, 20:38   #5
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Цитата:
Сообщение от Nook Посмотреть сообщение
Помогте написать программу для ввода с клавиатуры в переменную A типа массив матрицы размером 10х10. При вводе пользователь должен видеть индексы вводимого элемента, например, “А[2,5]=”.

совсем не могу
Во-первых задание совсем не сложное.
Во-вторых, если есть несколько заданий сразу - пиши их в одной теме.
Вот решение:
Код:
program z2;
var A: array[1..10,1..10] of integer;
     i,k: integer;
begin
writeln ('Введите элементы матрицы: ');
for i:=1 to 10 do
for k:=1 to `0 do
begin
write ('A [',i,',',k,'] = ');
readln (A[i,k]);
end;
end.

Последний раз редактировалось SuperVisor; 18.01.2007 в 20:53. Причина: Изменение раскладки
Flash_ вне форума Ответить с цитированием
Старый 18.01.2007, 21:44   #6
Nook
 
Регистрация: 18.01.2007
Сообщений: 5
По умолчанию [turbo pascal]

Напишите программу, использующую процедуры
Procedure Input_Comp (Var Comp: TComp);
Procedure Sum_Comp (Comp1,Comp2: TComp; Var RezComp: TComp);
Procedure Output_Comp (Comp: TComp).
Процедуры описаны в модуле OPERATE и предназначены для ввода и сложения двух комплексных чисел, а также для вывода на монитор результата сложения.
Nook вне форума Ответить с цитированием
Старый 19.01.2007, 12:16   #7
Umen
Форумчанин
 
Аватар для Umen
 
Регистрация: 10.11.2006
Сообщений: 189
По умолчанию

вот код:

модуль
Код:
unit operate;
interface
uses crt;
type
    TComp = record
             R: real; {dejstvitelnaja chast}
             C: real; {mnimaja chast}
    end;

procedure Input_Comp(var Comp: TComp);
procedure Sum_Comp(Comp1, Comp2: TComp; var RezComp: TComp);
procedure Output_Comp(Comp: TComp);
implementation
{vvod chisla}
procedure Input_Comp(var Comp: TComp);
begin
     write('Vvedite cherez probel dejstvitelnuju i' + #10#13 +
           'mnimuju chasti kompleksnogo chisla: ');
     readln(Comp.R, Comp.C);
end;
procedure Sum_Comp(Comp1, Comp2: TComp; var RezComp: TComp);
begin
     RezComp.R := Comp1.R + Comp2.R;
     RezComp.C := Comp1.C + Comp2.C;
end;
{vyvod chisla}
procedure Output_Comp(Comp: TComp);
var
   rs, cs: string;
begin
     str(Comp.R:4:2, rs);
     str(Comp.C:4:2, cs);
     write(rs + ' + i*' + cs);
end;
end.
программа, использующая этот модуль
Код:
uses crt, operate;
Var
   c1, c2, c3: TComp;
begin
     clrscr;
     Input_Comp(c1);
     Input_Comp(c2);
     Sum_Comp(c1, c2, c3);
     Writeln('Summa: ');
     Output_Comp(c3);
end.
Umen вне форума Ответить с цитированием
Старый 19.01.2007, 14:17   #8
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

2 Flash_ - молодец, но вторую задачу в следующий раз не решай ...
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 19.01.2007, 14:51   #9
Nook
 
Регистрация: 18.01.2007
Сообщений: 5
По умолчанию Cпасибо

Спасибки большие
Nook вне форума Ответить с цитированием
Старый 19.01.2007, 18:53   #10
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Цитата:
Сообщение от Virtson Посмотреть сообщение
2 Flash_ - молодец, но вторую задачу в следующий раз не решай ...
Потому что слишком легкая?
Flash_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
переменные Turbo Pascal Adzumi Помощь студентам 7 29.03.2008 20:11
Массив (Turbo Pascal) Wizzard Помощь студентам 2 20.01.2008 09:59
Turbo Pascal в Delphi 7 adm34 Общие вопросы Delphi 5 04.02.2007 11:29