Вопрос № 58720: помогите пожалуйста в написании алгоритма для следующей программы:установить ложность или истинность данного логического выражения:a or not(a or d) or (p-q<0) and (q<>0) or (a and b or d)
не могу понять что выводить на экран и как записа...Вопрос № 58737: Здравствуйте, уважаемые эксперты!
У меня такой вопрос%
Задана функция двух переменных.
Мне нужно в цикле присваивать Х значения от 1 до 10 и получившуюся функцию уже с одной переменной решить любым методом. Как решить функцию с одной пер...Вопрос № 58800: Здравствуйте эксперты!
У меня есть 2 массива, в которых содержатся только числа 1 или 0. Мне нужно отсортировать их, используя в качестве стека - файл. В одном массиве будут соответственно одни 1, а в другом одни нули. Помогите с реализацией. ...Вопрос № 58838: Помоги решить такую задачу:
Выпуклый четырехугольник задан координатами своих вершин x1,y1,x2,y2,x3,y3,x4,y4, причём вершины пронумерованы в произвольком порядке. Найти точку пересечения диагоналей четырёхугольника.
Причем решать надо ис...
Вопрос № 58.720
помогите пожалуйста в написании алгоритма для следующей программы:установить ложность или истинность данного логического выражения:a or not(a or d) or (p-q<0) and (q<>0) or (a and b or d)
не могу понять что выводить на экран и как записать условие.Заранее благодарен.
Отправлен: 12.10.2006, 23:16
Вопрос задал: Secret (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Strory
Здравствуйте, Secret!
Задачка из серии "глаза боятся, а руки делают". :)
Решение в приложении.
Удачи! Strory.
Приложение:
Ответ отправил: Strory (статус: Практикант)
Ответ отправлен: 12.10.2006, 23:53 Оценка за ответ: 5 Комментарий оценки: Спасибо огроменное!только вот со скобками пришлось немного поработать, а так все запустилось.Странно у меня программа зависала на стадии линковки и из нее не выходила часа пол(потом я нафиг всю деятельность свернул).
Отвечает: Gh0stik
Здравствуйте, Secret!
Так как выражение логическое, то и присваевать его значение я советую логической переменной.
Организоваваете ввод переменных, только не забывайте что boolean это перечисляемый тип данных и ввести его с клавиатуры нельзя.
Поэтому могу посоветовать такую конструкцию для ввода логических переменных:
var c:byte;
bool:boolean;
begin
write('введите логическую переменную (1=true/0=false)');
read(c);
case c of
0:bool:=false;
1:bool:=true;
end;
end.
А вот процедурка касающаяся непосредственно Вашего вопроса.
var rez,a,b,d:boolean;
q,p:integer;
begin
rez:=a or not(a or d) or (p-q<0) and (q<>0) or (a and b or d);
write('rez = ',rez);
end.
Обращаю Ваше внимание ответ будет в таком виде:
rez = TRUE
или
rez = FALSE
Удачи!!!
--------- Господь Бог - это всего лишь сверхмощный генератор случайных чисел, в соответствии с которыми сочетаются события на Земле. Генератор случайных чисел - и только.
Ответ отправил: Gh0stik (статус: Практикант)
Ответ отправлен: 13.10.2006, 11:12 Оценка за ответ: 5
Вопрос № 58.737
Здравствуйте, уважаемые эксперты!
У меня такой вопрос%
Задана функция двух переменных.
Мне нужно в цикле присваивать Х значения от 1 до 10 и получившуюся функцию уже с одной переменной решить любым методом. Как решить функцию с одной переменной я знаю. Проблема в замене Х на конкретное значение. Вот что примерно я написала, но это не работает.
Пункт номер раз.
'4*X*X+4*X*Y+6*Y*Y-17*X'; {это заданная функция}
Раз ее нужно посчитать, то, соответственно, он аи должна расчитываться, а не писаться абы как. Компьютер - вещь ужасно глупая, ему сказали посчитать - он посчитал, сказали занести в строку - он занес. Поэтому функция должна быть что-то вроде
F := 4*X*X+4*X*Y+6*Y*Y-17*X; {рассчитываем функцию}
Пункт номер два
Непосредственно о задаче
for x := 1 to 10 do
{и вот здесь пишем расчет функции 4*X*X+4*X*Y+6*Y*Y-17*X }
{при этом помним, что у X значение есть, значит, рассчитываем только для Y}
Насколько я понял из вопроса, настолько и ответил
--------- Запрограммировать можно все... кроме собственного поведения
Ответ отправил: Andronik (статус: 1-ый класс)
Ответ отправлен: 13.10.2006, 08:25
Отвечает: Verena
Здравствуйте, Вахрамеева Оксана!
Если Вы имеете в виду, что надо вывести на экран функцию в виде строки с подставленными вместо х-ов числами, то надо объявить F не Real, а string. Ну а про вычисление всё уже сказали выше))
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: 1-ый класс)
Ответ отправлен: 13.10.2006, 16:47
Вопрос № 58.800
Здравствуйте эксперты!
У меня есть 2 массива, в которых содержатся только числа 1 или 0. Мне нужно отсортировать их, используя в качестве стека - файл. В одном массиве будут соответственно одни 1, а в другом одни нули. Помогите с реализацией.
И еще вопрос: можно ли здесь использовать динамическую память?
Отправлен: 13.10.2006, 18:09
Вопрос задал: hairbaton (статус: 3-ий класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Verena
Здравствуйте, hairbaton!
Можно использовать такой алгоритм: сначала вывести в файл все нули из одного и все единицы из другого массива, удаляя в них соответствующие элементы, а потом записать в конец массивов элементы из файлов. Динамическую память использовать разве что для хранения массивов...
Код примерно такой, но он не проверялся на компиляторе.
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: 1-ый класс)
Ответ отправлен: 13.10.2006, 20:14
Вопрос № 58.838
Помоги решить такую задачу:
Выпуклый четырехугольник задан координатами своих вершин x1,y1,x2,y2,x3,y3,x4,y4, причём вершины пронумерованы в произвольком порядке. Найти точку пересечения диагоналей четырёхугольника.
Причем решать надо используя только условные операторы, без циклов, массивов и других прелестей программирования:-(
Отвечает: Verena
Здравствуйте!
В целом алгоритм будет такой. Сначала сравниваете координаты, находите две: одну с максимальным х и минимальным у, вторую - наоборот. Для упрощения их можно запомнить в новых переменных. Это будут два противоположных угла четырёхугольника, которые и будет соединять диагональ. Находите функцию, выражающую прямую, на которой лежит диагональ (вручную это делается через систему уравнений (кх1+в=у1; кх2+в=у2), а так можно сразу выразить коэфициенты (к=(у2-у1)/(х2-х1); в=у1-кх1). Аналогично выражается функция для
второй диагонали (используются оставшиеся две координаты, их можно пометить флажками). После эти две функции приравниваются, и полученные координаты являются ответом. Приравнивая функции сначала всё тоже следует выразить вручную, а в программу ввести формулы.
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: 1-ый класс)
Ответ отправлен: 14.10.2006, 00:11