Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 938 • Страница 43 из 47<  1 ... 40  41  42  43  44  45  46  47  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 28.03.2004
Откуда: Surgut
Добрый вечер. Нужна ваша помощь по Lisp.
Задача такая:
Цитата:
Дерево двоичного поиска представлено многоуровневым списком вида (x1 (x2 (...) (...)) (x3 (...) (...))). Реализовать функцию добавления новогозначения в дерево.

В общем то понятно что требуется, но ни математчиески, ни на лиспе не могу написать... Может кто поможет с кодом, или хотябы просто алгоритм объяснит? Понимаю, что на это нужно время, поэтому могу например в качестве благодарности положить некоторое количество денег а мобильник :oops:
Просто сдал все лабы кроме этой, и каждый день на счету...

_________________
:: Overclock your mind !!! ::



Партнер
 

Member
Статус: Не в сети
Регистрация: 28.03.2004
Откуда: Surgut
Вот что получилось:
Код:
(defun add(x a)
  (cond ( (null x) (list a nil nil))
        ( (> a (car x)) (list (car x) (cadr x) (add (caddr x) a)) )
        ( (< a (car x)) (list (car x) (add (caddr x) a) (cadr x)) )
        (t x)
  )
)

;(add '(9 NIL NIL) 12)   - эта работает
;(add '(9 NIL NIL) 4)     - эта тоже
(add '(9 (3 nil nil ) nil ) 4)
- эта работает неправильно.

Помогите пожалуйста исправить .

_________________
:: Overclock your mind !!! ::


 

Member
Статус: Не в сети
Регистрация: 21.01.2008
Откуда: Москва
Помогите пожалуйста с задачей по паскалю, почти горю.
Сделал программу, но надо переделать без использования выделенной строки (оператора "Function"), пытался что-то соорудить но не получилось :(

Условие:
Даны массивы:
H1,...,H10 - шифры изделий
SS1,...,SS10 - себестоимость изделий
C1...C10 - цены изделий.
Напечатать 2 списка изделий с себестоимостью выше средней из 10 изделий и с сбестоимостью ниже цены на 20%.
Цитата:
Program V20;
type
mas1 = array[1..10]of string[10];
mas2 = array[1..10]of real;
var
H :mas1;
SS,C :mas2;
Procedure Vvod(var H1:mas1;var SS1,C1:mas2);
var
F:text;
i:integer;
begin
assign(F,'V20_N7.txt');
reset(F);
for i:=1 to 10 do
readln(F,H1[i],SS1[i],C1[i]);
close(F);
end;
Function Sred(SS1:mas2):real;
var
S:real;
i:integer;
begin
S:=0;
for i:=1 to 10 do
S:=S+SS1[i];
S:=S/10;
Sred:=S;
end;
Procedure Vivod1(H1:mas1;var SS1,C1:mas2;S:real);
var i:integer;
begin
writeln('€§¤Ґ«Ёп б ᥡҐбв®Ё¬®бвмо ­Ё¦Ґ б।­Ґ© (',S:0:2,'):');
writeln('ЪДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДВДДДДДД
ї');
writeln('і ˜Ёда €§¤Ґ«Ёп і ‘ҐЎҐбв®Ё¬®бвм і –Ґ­  і');
writeln('ГДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДЕДДДДДД
ґ');
for i:=1 to 10 do
if SS1[i]<S then
writeln('і',H1[i]:14,'і',SS1[i]:15:2,'і',C1[i]:6:0,'і');
writeln('АДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДБДДДДДД
Щ');
readln;
end;
Procedure Vivod2(H1:mas1;SS1,C1:mas2);
var i:integer;
begin
writeln('€§¤Ґ«Ёп б ᥡҐбв®Ё¬®бвмо ­Ё¦Ґ жҐ­л ­  20%:');
writeln('ЪДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДВДДДДДД
ї');
writeln('і ˜Ёда €§¤Ґ«Ёп і ‘ҐЎҐбв®Ё¬®бвм і –Ґ­  і');
writeln('ГДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДЕДДДДДД
ґ');
for i:=1 to 10 do
if (C1[i]*0.8)=SS1[i] then
writeln('і',H1[i]:14,'і',SS1[i]:15:2,'і',C1[i]:6:0,'і');
writeln('АДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДБДДДДДД
Щ');
readln;
end;
BEGIN
Vvod(H,SS,C);
Vivod1(H,SS,C,Sred(SS));
Vivod2(H,SS,C);
END.


 

Member
Статус: Не в сети
Регистрация: 15.03.2007
Откуда: Одесса
столкнулся с такой проблемой при решении задачи на Delphi:
при использовании следующей процедуры для отсеивания нежелательных символов при вводе, дробные числа можно ввести только в 1 поле ввода, а нужно чтобы такая возможность была для всех полей
Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Key>='0') and (Key<='9') then
exit;
if (Key=DecimalSeparator) then
begin
if Pos(DecimalSeparator, Edit1.Text)<>0 then Key:=#0;
exit;
end;
case Key of
Chr(VK_BACK): exit;
Chr(VK_RETURN):
begin
Button1.SetFocus;
exit;
end;
end;
Key:=#0;
end;


если кому надо, вот исходники проги, в которой столкнулся с этой проблемой

_________________
Мир спасёт красота....
и массовые расстрелы


 

Junior
Статус: Не в сети
Регистрация: 09.09.2007
Откуда: Калуга-Москва
Mafioso так ты вроде сделал обработчик только для элемента Edit1. Если хочешь чтобы и другое поле ввода проверяла символы, то и для него нужно сделать что то подобное. Или сделать общую ф-ия и вызывать ее


 

Member
Статус: Не в сети
Регистрация: 15.03.2007
Откуда: Одесса
OlafSvenson
я специльно внизу выложил исходники, аналогичные процедуры есть для всех Edit'ов, но дробное число получается ввести только 1 раз(неважно в какое именно поле ввода), в последующих Edit'ах он просто не воспринимает запятую

_________________
Мир спасёт красота....
и массовые расстрелы


 

Member
Статус: Не в сети
Регистрация: 19.08.2005
Откуда: Москва
добрый вечер , скажите , где можно найти специалистов по acsess , есть задачка которую нужно сдать , чтобы допус получить к сессии )))


 

Member
Статус: Не в сети
Регистрация: 23.09.2008
Откуда: взять деньги?
помогите пожалуйста решить задачу по паскалю
Дается массив чисел(комп задает допустим 5 чисел) сколько из них отрицательных и самое большое отрицательное
Массив строк сколько палиндромов?
Помогите пожалуйста! Очень надо!
Добавлено спустя 1 час, 29 минут, 8 секунд
помогите пожалуйста срочно очень надо!(

_________________
i7 между ног? А i5 встал и смог!


 

Junior
Статус: Не в сети
Регистрация: 21.09.2006
Откуда: Europe
Парни помогите пожалуйстя те кто может и всем чем может, надеюсь есть среди вас толковые программеры для которых данные проблемы не составят труда! Проблема вот в чём: Задали написать два алгоритма для решения синуса и косинуса. Программа в которой мы работаем WinCC

#77


 

Member
Статус: Не в сети
Регистрация: 18.08.2008
Откуда: Саратов
А чем вам не понравилась тема по С? Там спросите


 

Junior
Статус: Не в сети
Регистрация: 21.09.2006
Откуда: Europe
Ребята, ну хоть ктонибудь помогите с алгоритмами.. неужели никто не знает???


 

Member
Статус: Не в сети
Регистрация: 01.05.2007
Откуда: Тель-Авив
Фото: 1
vadjos Дык на картинке и приведен алгоритм. Или тут нужен код?
Пожалуйста, вот код: (не проверял)
Код:
// считалка рядов Тейлора
#include <math.h>

// желаемая точность вычислений
#define   PRECISION   0.001

float   fuck2real( float n )
{   
   float   rv = n;

   do
      rv *= --n;
   while( n > 1 );
   return rv;
}

float   my_cos( float x )
{
   int   iter_num = 1;
   float   next_iter;
   float   rv = 1;

   do {
      next_iter = pow( x, iter_num * 2 ) / fuck2real( iter_num * 2 ) * -(iter_num % 1 );
      rv += next_iter;
   } while( next_iter > PRECISION );
   return rv;
}

float   my_sin( float x )
{
   int   iter_num = 0;
   float   next_iter;
   float   rv = 0;

   do {
      next_iter = pow( x, iter_num * 2 + 1 ) / fuck2real( iter_num * 2 + 1 ) * -(iter_num % 1 );
      rv += next_iter;
   } while( next_iter > PRECISION );
   return rv;
}


 

Junior
Статус: Не в сети
Регистрация: 21.09.2006
Откуда: Europe
Herod

#include <math.h> На эту строчку компилятор ругается! У нас программа в которой мы работаем winCC , а так понял что эта строчка использует какую то маиематическую библеотеку, а в winCC такой нету библеотеки!! Скажи пожалуйста это ты в какой программе писал?


 

Member
Статус: Не в сети
Регистрация: 01.05.2007
Откуда: Тель-Авив
Фото: 1
vadjos
В notepad. Говорю же - не проверял! ;-)
Ладно, тогда убери строчку, а вместо нее добавь:
Код:
float pow( float base, int exp )
{
    while( exp-- > 0 )
        base *= base;
    return base;
}

таким обраом можно обойтись вообще без библиотек.


 

Member
Статус: Не в сети
Регистрация: 23.12.2004
Откуда: Беларусь, Минск
Visual FoxPro 9.0
В БД таблицы, две из которых "Клиенты" и "Подписки"
У клиента может быть какая-нибудь одна подписка - таблицы связаны "один-ко-многим"...
вобщем - см картинку:
#77
Делаю форму редактирования клиентов - хотелось бы чтоб к соответствующему пользователю отображалась соответствующая подписка.

_________________
ASUS A4M88T-M, Athlon II X3 425, 2GB NCP, video - internal ATI 4250, 200GB Samsung HDD, Win7 x64


 

Member
Статус: Не в сети
Регистрация: 26.02.2005
Откуда: Москва
Парни, кто умеет работать в VB для того моя задача на 3 минуты, я уверен, не хотят мне зачет без нее ставить и все тут Рев в 3 ручья
А я, видя эту программу впервые, не могу сделать так как нужно.

В общем, задача такова - необходимо сделать светофор с тремя лампами, зеленой желтой и красной, чтобы по таймеру каждый из них мигал по-очередно, причем сначала горит красный, затем желтый (мигает три раза) и переходит на зеленый, короче аналог обычного светофора.

Нарисовать всю эту фигню я могу, с цветами разберусь, мне нужен только код. Так что, если кто может помочь, я бы был ооочень признателен


 

Member
Статус: Не в сети
Регистрация: 13.09.2008
есть исходники. 3 программы на turbo pascal написать с использованием подпрограмм, модулей и файлов. нужно для сдачи практики по программированию. 1ый курс. оплата обсуждается далее. способ оплаты - кину деньги на моб телефон. оставьте контакты, кто заинтересован. спасибо.


 

Member
Статус: Не в сети
Регистрация: 01.10.2008
Откуда: Петербург
пишу для универа прогу (над прогой не смеятся- 1-й курс)=) пишу на С#. все время выдает одинаковые для обоих z ( и не верные!!!) значения.
вот рабочая часть программы:
String a,b;
double a1,b1,z,z1;
Console.WriteLine("Введите значение a");
a = Console.ReadLine();
Console.WriteLine("Введите значение b");
b = Console.ReadLine();
a1 = Convert.ToDouble(a);
b1 = Convert.ToDouble(b);
z = Math.Pow((Math.Cos(a1) - Math.Cos(b1)),2) - Math.Pow((Math.Sin(a1) - Math.Sin(b1)),2);
Console.WriteLine(z);
z1 = (-4)*Math.Pow(Math.Sin((a1 - b1) / 2), 2) * Math.Cos(a1 + b1);
Console.WriteLine(z1);

подозрение падает на функцию син/кос, так как при вычеслении косинуса из 45 выдает иррациональное число
помогите пожалуйста найти ошибку
P.s а и b задаются юзером любые. но правильные(систему коррекции ошибок не надо) надо вычислить значения выражений:
z=((cos(a)-cos(b))^2-(sin(a)-sin(b))^2
z1=-4*sin((a-b)/2)^2*cos(a+b)

трабла точно в выражениях- проверял значения после функции Convert.ToDouble- они норм.


 

Member
Статус: Не в сети
Регистрация: 10.12.2003
kafatron
Пользователь вводит угол в радианах? Если нет, то нужно преобразовать из градусов в радианы, т.к. аргумент для функций sin и cos должень быть в радинах.


 

Member
Статус: Не в сети
Регистрация: 14.09.2008
ребят помогите решить систему методом Гаусса
x+y+z=5;
x-y+z=1;
x+z=3.(все эти три выражения под знаком системы)

_________________
Gigabyte GA-MA770-UD3/955BE @3,93Ghz/Thermalright Silver Arrow/RAM 4GB @952Mhz(6-6-6-18-2T)/GTX 580 3GB @850mhz/SSD Plextor M3 128Gb/TT Toughpower750W


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 938 • Страница 43 из 47<  1 ... 40  41  42  43  44  45  46  47  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan