Вернуться   GraBBerZ.CoM - ICQ | Proxy | Бруты | Дедики | Эксплоиты > Программирование/Кодинг > Общие вопросы

Ответ
 
Опции темы Опции просмотра

Решите задачу по программированию
Старый 11.02.2009, 18:33   #1
Вечный студент
 
Аватар для Tor Bel
 
Tor Bel вне форума
Регистрация: 05.07.2008
Адрес: Большая Деревня
Сообщений: 3,001
Респекты: 3,407

Решите задачу по программированию

Все просьбы о решении задач по программированию размещать в этой теме.
__________________
Ударим глюком по багу. (с)2000 by мой.
В избе у Сергеича
Почётный фанат Ушатика - масюты
  Ответить с цитированием
Респектов за этот пост: 2

Старый 11.02.2009, 19:42   #2
byte
 
Аватар для search74
 
search74 вне форума
Регистрация: 18.05.2008
Сообщений: 58
Респекты: 11
Помогите решить задачу с подключение к удаленной Mysql базе данных в Delphi. Т.е. нужен код соединения и какой компонент вообще для этого используется.
  Ответить с цитированием

Старый 12.02.2009, 01:27   #3
kilobyte
 
Аватар для opium
 
opium вне форума
Регистрация: 05.10.2006
Сообщений: 173
Респекты: 85
http://www.google.com/search?hl=ru&q...2+Google&meta=

неужели так сложно?
  Ответить с цитированием

Старый 07.04.2009, 11:32   #4
byte
 
Аватар для gadzhi
 
gadzhi вне форума
Регистрация: 06.09.2008
Сообщений: 66
Респекты: 0
Задача: Программа выполнена на Pascal.Используется идея поиска решения с возвратом- backtracking.Задаётся площадь которую надо покрыть несравнимыми прямоугольниками(никакой нельзя вложить в другой).
Так вот я скачал на одном сайте.Запускаю ее все выполняется но она всегда пишет что нельзя покрыть.Там был еще exe файл в архиве.Его я запускаю,ввожу данные и она покрывает тот же прямоугольник.А когда я сам компилирую прогу то она пишет что нельзя.Не подскажете где ошибка?
  Ответить с цитированием

Старый 07.04.2009, 13:52   #5
kilobyte
 
Аватар для GoshaN
 
GoshaN вне форума
Регистрация: 22.01.2009
Адрес: 59 rus
Сообщений: 187
Респекты: 134
gadzhi, кажись работает) попробуй значения 21 и 32 или 31 и 31
  Ответить с цитированием

Старый 07.04.2009, 14:49   #6
byte
 
Аватар для gadzhi
 
gadzhi вне форума
Регистрация: 06.09.2008
Сообщений: 66
Респекты: 0
Она та работает.EXE файл когда запускаю и ввожу данные то нормально разбивает.А когда компилирую и ввожу теже данные то она пишет что неразбивается.и еще в файле lab4.pas в строке work(s,pole,l-3,0,l,w,sq) после паскаль просит ввести значение переменной byte.Может здесь ошибка?
  Ответить с цитированием

Старый 07.04.2009, 21:53   #7
byte
 
Аватар для 32bita
 
32bita вне форума
Регистрация: 20.12.2008
Адрес: Москва
Сообщений: 70
Респекты: 22
Паскаль. Друг попросил решить. Я хз как..

Код:
Написать программу, которая после введеного с клавы числа (в диапозоне от 1 до 999), oбозначающая денежную единицу, дописывает слово "рубль"  в правильной форме.  
Например: 12 рублей, 21 рубль, 43 рубля. 
Оператор выбора + mod нужно употребить, но я точно не знаю.. 
Примеры ранее решенных задач: 
 
 
Вывод стоимости звонка в зависимости от кода. 
Program base;  
var time:integer;  
var code:integer;  
begin;  
writeln('vvedi kod');  
readln(code);  
writeln('vvedi profolgitel`nost');  
readln(time);  
Case code of  
423:writeln('Владивосток. Цена за минуту 2.2 рубля. Цена при разговоре ',time,' минут составляет ',2.2*time,' рублей');  
095:writeln('Москва. Цена за минуту 1 рубль. Цена при разговоре ',time,' минут составляет ',1*time,' рублей');  
815:writeln('Мурманск. Цена за минуту 1.2 рубля. Цена при разговоре ',time,' минут составляет ',1.2*time,' рублей');  
846:writeln('Самара. Цена за минуту 1.4 рубля. Цена при разговоре ',time,' минут составляет ',1.4*time,' рублей');  
else writeln('Код не найден в базе.');  
end;  
readln  
end. 
 
 
Вывод Раюочий день/Суббота/Воскресенье в зависимости от дня недели(числа). 
 
var week:integer; 
begin; 
writeln('vvedite nomer dn9 (ot 1 do 7) i najmite <ENTER>'); 
read(week); 
case week of 
1..5:writeln('rabo4iu den'); 
6:writeln('sybbota'); 
7:writeln('voskresene'); 
else writeln('nomer ne nauden'); 
end; 
readln; 
end.
  Ответить с цитированием

Старый 07.04.2009, 22:31   #8
 
Аватар для Zdez Bil Ya
 
Zdez Bil Ya вне форума
Регистрация: 08.08.2008
Сообщений: 1,499
Респекты: 3,395
Цитата:
Сообщение от 32bita Посмотреть сообщение
Паскаль. Друг попросил решить. Я хз как..
вот подробно:
Код:
Program Rubl;
var
 n,k,m:integer;
begin
 writeln('vvedite chislo');
 readln(n);
 k:=(n mod 100) div 10;
 m:=n mod 10;
 case m of
  1: if (k=1) then writeln('рублей') else writeln('рубль');
  2: if (k=1) then writeln('рублей') else writeln('рубля');
  3: if (k=1) then writeln('рублей') else writeln('рубля');
  4: if (k=1) then writeln('рублей') else writeln('рубля');
  5: writeln('рублей');
  6: writeln('рублей');
  7: writeln('рублей');
  8: writeln('рублей');
  9: writeln('рублей');
  0: writeln('рублей');
 end;
 readln;
end.
вот оптимально:
Код:
Program Rubl;
var
 n,k,m:integer;
begin
 writeln('vvedite chislo');
 readln(n);
 k:=(n mod 100) div 10;
 m:=n mod 10;
 case m of
  1: if (k=1) then writeln('рублей') else writeln('рубль');
  2: if (k=1) then writeln('рублей') else writeln('рубля');
  3: if (k=1) then writeln('рублей') else writeln('рубля');
  4: if (k=1) then writeln('рублей') else writeln('рубля');
 else writeln('рублей');
 end;
 readln;
end.
  Ответить с цитированием
Респектов за этот пост: 3

Старый 06.06.2009, 16:26   #9
Эмо-крякер
 
Аватар для i~DOS
 
i~DOS вне форума
Регистрация: 24.11.2008
Сообщений: 446
Респекты: 540
На с++ или паскале. Условие:
Дано два отрезка на плоскости (их координаты)
нужно определить их взаимное отношение, а конкретнее, вывести:
1 - отрезки пересекаются в одной точке и она находиться в середине этих двух отрезков - например координаты:
0 0 2 2
0 2 2 0
0 - отрезки не пересекаются
2 - отрезки не пересекаются и проходят параллельно
3 - отрезки пересекаются в боле чем в одной точке, например
0 0 2 2
1 1 3 3
4 - отрезки пересекаются и точка пересечения - один с концов отрезка
__________________
  Ответить с цитированием

Старый 06.06.2009, 22:02   #10
bot
 
Аватар для -Silence
 
-Silence вне форума
Регистрация: 27.10.2008
Сообщений: 2
Респекты: 0
Итого, уже хреньте сколько мучаюсь и никак ни могу понять как же это сделать.
Задание такое сделать шарик который падает по законам гравитации и оскакивает естественно) в openGl. сама программа есть а вот цикла, или еще чего, выччисление которое будет ускорять шарик и и делать его отскок не могу. кто чем может помогите, последняя лаба осталась для защиты!!! и у меня экзамен автоматом!!)))
с++ openGl

выкладывыю что сделал сам, что получилось у меня.

Код:
float y=0;
float yy=0.2;
float v0=0;
float t=0;
float a=9.8;
float v=0;
float y0=4;
// тут дальше удет всякая всячина....

void Idle()
{
t=t + 0.001;

 v=-a*(t*t)+y*v0;
 y=-a*(t*t)+ v*t + y0;


//делал так примерно ТОЧНО НЕ ПОМНЮ
if (y=0)
{
t=0;// сбрасываем как бы таймер
v0=-10;

}


//сегодня наклепал второй вариант через синусоиду, доума довести не получилось правда....( проиходит обратное действие... синусоида увеличивается, вместо угасания
float r=4;
float t=0;
float alptha=0;
...

t=0;
alptha=0;
	t=t+0.001;
alpha=alpha + 0.001;
y=-y+r*sin(alpha)/2*t*(-1);
...
или как кто знает, способ реализации

PS:.если не туда написал не обезсудьте мозг умер, курсач сегодня доделывал, заипался
  Ответить с цитированием

Старый 25.09.2009, 18:03   #11
kilobyte
 
Аватар для V@mpir
 
V@mpir вне форума
Регистрация: 04.07.2008
Адрес: Россия
Сообщений: 139
Респекты: 121
Всем привет! Нужна помощь.
Задача:

Цитата:
симметричная последовательность
последовательность чисел назовем симметричной, если она одинаково читается как слева направо, так и справа налево. например, следующие последовательности являются симметричными:
1 2 3 4 5 4 3 2 1
1 2 1 2 2 1 2 1
вашей программе будет дана последовательность чисел. требуется определить, какое минимальное количество и каких чисел надо приписать в конец этой последовательности, чтобы она стала симметричной.
формат входных данных
во входном файле записано сначала число N — количество элементов исходной последовательности. далее записано N чисел — элементы этой последовательности. 1≤n≤100, элементы последовательности — натуральные числа от 1 до 9.
формат выходных данных
в выходной файл выведите сначала число M — минимальное количество элементов, которое надо дописать к последовательности, а потом M чисел (каждое — от 1 до 9) — числа, которые надо дописать к последовательности.

примеры:
----------------
input файл
9
1 2 3 4 5 4 3 2 1

output файл
0
----------------
input файл
5
1 2 1 2 2

output файл
3 1 2 1
---------------
input файл
5
1 2 3 4 5

output файл
4 4 3 2 1
PS. Pascal
  Ответить с цитированием

Старый 25.09.2009, 21:01   #12
 
Аватар для Zdez Bil Ya
 
Zdez Bil Ya вне форума
Регистрация: 08.08.2008
Сообщений: 1,499
Респекты: 3,395
V@mpir, на:

Код:
var
  N,i,j : integer;
  a : array [1..1000] of integer;
  input, output: textfile;

function palindrom (k : integer) : boolean;
var
  i1 : integer;
begin
 palindrom := true;
  for i1:=1 to k div 2 do
    if a[i1]<>a[k+1-i1] then begin
      palindrom := false;
      break;
    end;
end;

begin
assign(INPUT,'b.txt');reset(INPUT);
assign(OUTPUT,'b.out');rewrite(OUTPUT);
readln(INPUT,N);
for i:=1 to N do
  read(INPUT,a[i]);
for i:=0 to N-1 do begin
   for j:=1 to i do
     a[N+j]:=a[i+1-j];  {Добавляем в конец i чисел}
   if palindrom(N+i) then begin
     write(OUTPUT,i,' '); {Печатаем количество добавленных чисел}
     for j:=1 to i do
       write(OUTPUT,a[N+j],' ');  {Печатаем добавленные числа}
     close(output);
     exit;
   end;
end;
close(INPUT);
close(OUTPUT);
end.
Придумал не я. Просто по третьей ссылке по запросу "симметричная последовательность" лежит решение. Но оно не работает, т.к. не всё написано. А теперь работает))
  Ответить с цитированием
Респектов за этот пост: 2

Старый 05.10.2009, 19:51   #13
kilobyte
 
Аватар для V@mpir
 
V@mpir вне форума
Регистрация: 04.07.2008
Адрес: Россия
Сообщений: 139
Респекты: 121
Входной файл , в нем строка вида
4 10 10 10 10, необходимо найти сумму всех чисел за исключением первого в данном случаи 40 и вычесть из этой суммы (первое число минус 1) то есть получится 37.
Основная загвоздка у меня в виде строки. Не могу считать из-за записи через пробел.

PS.Delphi
  Ответить с цитированием

Старый 05.10.2009, 19:55   #14
Вечный студент
 
Аватар для Tor Bel
 
Tor Bel вне форума
Регистрация: 05.07.2008
Адрес: Большая Деревня
Сообщений: 3,001
Респекты: 3,407
Какой язык программирования?

Добавлено через 10 минут
1. С помощью функции Pos ищешь позицию первого пробела в строке. Соответственоо первое число будет от начала до позиции пробела минус единица.
2. Эту строку вырезаешь с помощью SubStr.
3. Преобразуешь строку в число StrToInt.
4. Затем, с помощью Delete удаляешь первое число.

Организуешь цикл с возвратом на пункт 1, пока не кончилась строка.

PS. В последнем проходе цикла Pos вернёт 0. Проверь, если до конца строки не пусто, то последнее число лежит до конца строки. В противном случае - последнее число было считано в предыдущем проходе.
__________________
Ударим глюком по багу. (с)2000 by мой.
В избе у Сергеича
Почётный фанат Ушатика - масюты
  Ответить с цитированием
Юзеру Tor Bel выразили Респект за этот пост:

Старый 05.10.2009, 22:10   #15
VIP
 
Аватар для life96
 
life96 вне форума
Регистрация: 08.03.2008
Сообщений: 162
Респекты: 319
Tor Bel, проще можно IMHO

Код:
{$apptype console}
var z: integer;
begin
  while not eof do
  begin
    read(z);
    writeln(z);
  end;
end.
  Ответить с цитированием
Юзеру life96 выразили Респект за этот пост:
Ответ

Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Время: 18:58



Powered by vBulletin® Version 3.7.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot