IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> операции со знаками
сообщение
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 324
Пол: Мужской
Реальное имя: maksim

Репутация: -  1  +


6 задание
Арифметическое значение a О b О c О d О e = r операции в знаках закрыты. Тут можно будет использовать здоровых чисел операций + , - ,* , div, mod.

Напишите правильную программу которая нашла бы какие должны быть операций знаках чтобы уравнение было бы правильное.

Первичные данные записаны в файле duom.txt На одной единственной строчке написаны отделенные пробелом здоровые числа a, b, c, d, e, r (a, b, c, d, e, r ≤ 3000).

Результат - полученое значение или слово - нельзя - записываются в файл rez.txt. Все элементы отделены одним пробелом.

Внимание Промежуточных подсчета результатов непереходят int64 .
первичные данные
4 3 2 3 1 6
результат
4 mod 3 + 2 * 3 – 1 = 6
Что еще за тип int64?
тут как то примерно как и в этом задание задача подсчет чтобы то число найти


--------------------
Учусь первый год на программиста в колледже. Учусь на втором курсе в школе программирования при научно-исследовательском институте математики и информатики.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Вот возможное решение.
const
nPar=5;
nOper=5;
Opers: array[0..nOper-1]of string=('+','-','*','div','mod');

var
Par,Par0: array[0..nPar-1]of Int64;
Oper,Oper0: array[0..nPar]of word;
i,m: word;
r,r0,t: Int64;
f: text;

begin
Assign(f,'duom.txt');
ReSet(f);
for i:=0 to nPar-1 do Read(f,Par0[i]);
Read(f,r0);
Close(f);
for i:=0 to nPar do Oper0[i]:=0;
m:=0;
repeat
Par:=Par0;
Oper:=Oper0;
for i:=1 to nPar-1 do case Oper[i] of
2: begin
Par[i]:=Par[i-1] * Par[i];
Par[i-1]:=0;
Oper[i]:=Oper[i-1]
end;
3: begin
Par[i]:=Par[i-1] div Par[i];
Par[i-1]:=0;
Oper[i]:=Oper[i-1]
end;
4: begin
Par[i]:=Par[i-1] mod Par[i];
Par[i-1]:=0;
Oper[i]:=Oper[i-1]
end
end;
r:=Par[0];
for i:=1 to nPar-1 do case Oper[i] of
0: r:=r+Par[i];
1: r:=r-Par[i]
end;
if r=r0 then begin
Write(Par0[0]);
for i:=1 to nPar-1 do Write(' ',Opers[Oper0[i]],' ',Par0[i]);
WriteLn(' = ',r);
Inc(m)
end;
t:=1;
for i:=1 to nPar do begin
t:=Oper0[i]+t;
Oper0[i]:=t mod nOper;
t:=t div nOper
end
until Oper0[nPar]=1;
WriteLn(m,' combinations found')
end.

Максим, ты спрашивай поактивнее, что неясно.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
maksimla   операции со знаками   15.03.2009 14:22
amega   о типах в делфи из ссправки скопировал: Generic …   15.03.2009 15:25
maksimla   а тут паскаль у меня можешь тогда подробнее написа…   15.03.2009 16:33
Lapp   я непонимаю все что с знаком связано ^Этим знаком …   15.03.2009 16:37
maksimla   ого какая степень большая. Странно только почему т…   15.03.2009 20:11
volvo   У тебя 5 чисел... Если каждое число будет максимал…   15.03.2009 20:26
maksimla   тогда вот такой вопрос (r ≤ 3000). там было …   16.03.2009 15:02
Lapp   Вот возможное решение. const nPar=5; nOper=5; …   16.03.2009 15:25
maksimla   for i:=0 to nPar-1 do Read(f,Par0[i]); Read(f,r0…   16.03.2009 17:46
volvo   Нормально все записывает... Ты как проверял? У мен…   16.03.2009 18:48
maksimla   компелирую fps 0.6.4a это компилятор на котором уч…   16.03.2009 19:56
maksimla   может надо что то добавить например как это {…   16.03.2009 20:19
volvo   Да, добавить надо, но не совместимость... Какая-то…   16.03.2009 20:48
maksimla   а что это тут 2: begin цифры значат тут везде но э…   18.03.2009 15:32
volvo   Почему не метка? Как раз метка... Case в цикле не …   18.03.2009 16:03
maksimla   да уж не заметил спасибо сейчас все понятно   18.03.2009 16:53


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 17.06.2024 9:43
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name