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




Куратор(ы):   Lord_of_Darkness   



Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 985 • Страница 36 из 50<  1 ... 33  34  35  36  37  38  39 ... 50  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Убедительная просьба ко всем, кто выкладывает исходники:
1. Обязательно пользуйтесь тэгом code (иначе очень трудно читать)
2. Старайтесь делать отступы

Если вы хотите чтобы вам помогли в написании программы, внятно излагайте задание!

Прежде чем задать вопрос, воспользуйтесь учебником


Возможно, что нужная вам программа уже написана, поэтому советую просмотреть список здесь и здесь

Отредактировано куратором: Lord_of_Darkness. Дата: 07.07.2006 19:36



Партнер
 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
нет, но просто если бы надо было утроить символ в строке, введенный по запросу пользователя с клавиатуры, то
Код:
 var a,c:string;
 i,k:integer;
 b:char;
begin
 readln(a);
 readln(b);
 c:='';
 for i:=1 to length(a) do
          begin
               if a[i]=b then c:=c+b+b+b else c:=c+a[i];
           end;
  writeln(c);
 readln;
end.


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
Можно и таким путем :). Делаете аналогично:
Код:
c:='';
for i:=1 to length(a) do
           c:=c+a[i]+a[i]+a[i];


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
А что сделать, когда надо утроить все????:spy:


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
В смысле "все"? У меня опять проблемы с пониманием ;).


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
В смысле все символы( не по запросу, а, например, вводится строка, а потом выводится с утроенными символами: мак - мммаааккк)

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
Эээ, а я что вам написал :)? a - исходная строка, c - строка с утроенными символами ;).


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
Ой, слепота приключилась.... :roll: Спасибо!!!! :D

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
Скажите пожалуйста, как исправить одну вещь... Вобщем, есть внешний цикл, в котором имеются ещё несколько. В двух из них перемещается объект. Необходимо чтобы ещё один объект перемещался по нажатию клавиш независимо от перемещения 1. Если это перемещение поместить между первыми 2 циклами, то пока 1 объект не пройдет по назначенной ему траектории, то ничего не сдвинуть, если за ними, то ещё хуже. :bandhead: Куда его поместить???? :?:


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
manya
Довольно расплывчато :). Код настолько секретный, что его нельзя выложить?
По передвижениям - временные параметры, количество элементарных отрисовок объекта в процессе передвижения из точки А в точку Б?


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
Вот часть
Код:
uses graph,crt;
 var ya,y,xmin,xm,ymin,x,ym,x2,y2,rx,r,ry,dy,d,pause,xa,i,white,black:integer;
 var graphDriver,GraphMode,ErrorCode:integer;
 var klavisha:char;
  procedure Drawing_gun(var xg:integer;var yg:integer;var cvet:integer);
 begin
  setcolor(cvet);
  circle(xg,yg,17);
  line(xg-3,yg-50,xg-3,yg+8);
  line(xg+3,yg-50,xg+3,yg+8);
  line(xg-3,yg-50,xg+3,yg-50);
  line(xg-3,yg+8,xg+3,yg+8);
  line(xg-8,yg-8,xg-3,yg-8);
  line(xg+8,yg-8,xg+3,yg-8);
  line(xg+8,yg-5,xg+8,yg+5);
  line(xg-8,yg-5,xg-8,yg+5);
 end;
  procedure Moving_Spaceship_Right(var xm:integer;var ym:integer;var rad:integer;var color:integer);
 begin
   setcolor(color);
   ellipse(xm,120,0,360,rad,rad div 3+2);
   ellipse(xm,116,190,357,rad,rad div 3);
   line(xm+7,114,xm+10,ym-12);
   line(xm-7,114,xm-10,ym-22);             {в аҐ«Є  ¤ўЁ¦Ґвбп ­ Їа ў®}
   circle(xm+10,110,2);
   circle(xm-10,110,2);
 end;
  procedure Moving_Spaceship_left(var xl:integer;var yl:integer;var radi:integer;var color1:integer);
 begin
   setcolor(color1);
   ellipse(xl,120,0,360,radi,radi div 3+2);
   ellipse(xl,116,190,357,radi,radi div 3);
   line(xl+7,114,xl+10,yl-12);
   line(xl-7,114,xl-10,yl-22);             {в аҐ«Є  ¤ўЁ¦Ґвбп ­ «Ґў®}
   circle(xl+10,110,2);
   circle(xl-10,110,2);
 end;
begin
  r:=20;
  x:=r*2;
  y:=r*6;
  xa:=390;
  ya:=450;
  white:=15;
  black:=0;
  pause:=100;  {®ЇЁб ­ЁҐ ЇҐаҐ¬Ґ­­ле}
 clrscr;
 randomize;
 GraphDriver:=detect;
 initGraph(graphdriver,graphMode,'c:\bp\bgi');
 ErrorCode:=GraphResult;
 If ErrorCode<>grOk then
                    begin
                    Writeln('ЋиЁЎЄ  Ја дЁЄЁ:',GraphErrorMsg(ErrorCode));
                    Halt(1);
                    end;
 Rectangle(0,0,GetMaxX,GetMaxY);
 delay(1000);
 outtextxy(250,10,'My game');
 for i:=1 to 500 do
     putpixel(random(getmaxx),random(getmaxy-ymin),random(16));
 Drawing_gun(xa,ya,white);
 SetLineStyle(0,0,ThickWidth);
   repeat
 if keypressed then
  begin
   klavisha:=readkey;
 repeat
   SetLineStyle(0,0,ThickWidth);
   Moving_Spaceship_Left(x,y,r,white);
   Moving_Spaceship_Left(x,y,r,black);
   x:=x-3;
      SetLineStyle(0,0,NormWidth);
   delay(pause);
   Drawing_Gun(xa,ya,black);
    case klavisha of
         'd':xa:=xa+d;
         'a':xa:=xa-d;         {ЇҐаҐ¤ўЁЈ Ґ¬ ЇгиЄг}
      end;
   Drawing_Gun(xa,ya,white);
   SetLineStyle(0,0,ThickWidth);
 until x<20;
 repeat
   SetLineStyle(0,0,ThickWidth);
   Moving_Spaceship_Right(x,y,r,white);
   Moving_Spaceship_Right(x,y,r,black);
   x:=x+3;
   SetLineStyle(0,0,NormWidth);
   delay(pause);
   Drawing_Gun(xa,ya,black);
    case klavisha of
         'd':xa:=xa+d;
         'a':xa:=xa-d;         {ЇҐаҐ¤ўЁЈ Ґ¬ ЇгиЄг}
      end;
   Drawing_Gun(xa,ya,white);
   SetLineStyle(0,0,ThickWidth);
 until x>600;
  end;
   until klavisha='q';
 readln;
 closegraph;

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
А чем собственно отличается процедура Moving_Spaceship_Right от Moving_Spaceship_Left :)?
В этом случае должен быть один цикл, в котором происходит определение нажатой клавиши и по одной операции элементарной отрисовки объекта №1 и объекта №2. Попутно можно в тот же цикл вставить условия проверки текущих координат объектов на предмет достижения граничных значений.

P.S. Имеется как минимум один явный глюк - движущиеся объекты будут стирать статические объекты (в данном случае звездное небо). Кстати, почитайте о режимах вывода изображения, в частности xorput. Это может сильно упростить жизнь по перерисовке/стиранию :).


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
maco Спасибо :)

_________________
Семь бед, один Reset. 95, 98 - это количество багов. В пpоцентах...
DCN - наше все


 

Member
Статус: Не в сети
Регистрация: 05.01.2008
Срочно! Составить прог. Для.нахождения суммы двух одномерн. массивов.

_________________
Человеческая глупость даёт представление о бесконечности.


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
Можете, пожалуйста, написать какой-нибудь пример (все равно что), когда что-то куда-то движется, а в этот момент движется ещё что-то при нажатии на клавиши не зависимо от того, куда движется 1 движется ещё что-то.... А то у меня все таже проблема :insane:


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
Fraunhofer писал(а):
Составить прог.

Слюшайт., а зачм слов. сокр.?

Код:
c:=0;
for i:=1 to array_length do
           c:=c+a[i]+b[i];



manya
Через полчаса-час загляните, может быть выкину.
Добавлено спустя 2 часа, 38 секунд
manya
Что-то в таком стиле, я сильно вашу заготовку не перерабатывал :):
Код:
uses graph,crt;
 const right=false; left=true;
 var ya,y,xmin,xm,ymin,x,ym,x2,y2,rx,r,ry,dy,d,pause,xa,i,white,black:integer;
 var graphDriver,GraphMode,ErrorCode:integer;
 var klavisha:char; direction:boolean;
  procedure Drawing_gun(var xg:integer;var yg:integer;var cvet:integer);
 begin
  setcolor(cvet);
  circle(xg,yg,17);
  line(xg-3,yg-50,xg-3,yg+8);
  line(xg+3,yg-50,xg+3,yg+8);
  line(xg-3,yg-50,xg+3,yg-50);
  line(xg-3,yg+8,xg+3,yg+8);
  line(xg-8,yg-8,xg-3,yg-8);
  line(xg+8,yg-8,xg+3,yg-8);
  line(xg+8,yg-5,xg+8,yg+5);
  line(xg-8,yg-5,xg-8,yg+5);
 end;
  procedure Drawing_Spaceship(var xm:integer;var ym:integer;var rad:integer;var color:integer);
 begin
   setcolor(color);
   ellipse(xm,120,0,360,rad,rad div 3+2);
   ellipse(xm,116,190,357,rad,rad div 3);
   line(xm+7,114,xm+10,ym-12);
   line(xm-7,114,xm-10,ym-22);
   circle(xm+10,110,2);
   circle(xm-10,110,2);
 end;
begin
  r:=20;
  d:=5;
  x:=r*2;
  y:=r*6;
  xa:=390;
  ya:=450;
  white:=15;
  black:=0;
  pause:=200;
  direction:=left;
 clrscr;
 randomize;
 GraphDriver:=detect;
 initGraph(graphdriver,graphMode,'c:\bp\bgi');
 ErrorCode:=GraphResult;
 If ErrorCode<>grOk then
                    begin
                    Writeln('Error:',GraphErrorMsg(ErrorCode));
                    Halt(1);
                    end;
 Rectangle(0,0,GetMaxX,GetMaxY);
 delay(1000);
 outtextxy(250,10,'My game');
 for i:=1 to 500 do
     putpixel(random(getmaxx),random(getmaxy-ymin),random(16));
 Drawing_gun(xa,ya,white);
 Drawing_Spaceship(x,y,r,white);
 repeat
 delay(pause);
   Drawing_Spaceship(x,y,r,black);
   if direction then
                    begin
                         x:=x-1;
                         if x<=21 then
                                     begin
                                          x:=21;
                                          direction:=right;
                                     end;
                    end
                else
                    begin
                         x:=x+1;
                         if x>=618 then
                                     begin
                                          x:=618;
                                          direction:=left;
                                     end;
                    end;
   Drawing_Spaceship(x,y,r,white);
   Drawing_Gun(xa,ya,black);
   if keypressed then
    begin
      klavisha:=readkey;
      case klavisha of
         'a':
             begin
                  xa:=xa-d;
                  if xa<=21 then xa:=21;
             end;
         'd':
             begin
                  xa:=xa+d;
                  if xa>=618 then xa:=618;
             end;
      end;
      end;
   Drawing_Gun(xa,ya,white);
   until klavisha='q';
 readln;
 closegraph;
end.


 

Member
Статус: Не в сети
Регистрация: 10.12.2007
Откуда: Санкт-Петербург
maco Спасибо :applause: Огромное спасибо, куда бы я без Вас! :dance:


 

Member
Статус: Не в сети
Регистрация: 04.11.2007
Помогите решить:

Вычислить значение функции f(x), x изменяется на интервале [a,b] с шагом x. Для вычисления воспользоваться разложением функции f(x) в ряд Тейлора значение f(x) вычислить с точностью E=10^-4 или по первым 25 числам ряды. На печать вывести значения x, f(x) просуммированных членов ряда.

Вот сама функция:

http://i037..radikal.ru/0805/b6/15f71f6d6db9.jpg

Буду очень признателен....


 

Member
Статус: Не в сети
Регистрация: 04.10.2004
PeReDoZZZ
По поводу вычисления суммы ряда - здесь.


 

Народ очень нужна помощь.
Есть функция на Pascal
function ff(i,j:integer):integer;
var
pr:^integer;
begin
pr:=ptr(seg(F[i]^),ofs(F[i]^)+(j-1)*sizeofinteger);
ff:=pr^;
end;


Никто не знает как ее перевести в Delphi?
А то в Delphi не существует функций seg и ofs :(
Очень надо :(


 

Member
Статус: Не в сети
Регистрация: 21.01.2004
Откуда: ядерная помойка
demok2
наверное, неактуально уже, но ответ такой: никак.
НЕ используются в 32-битных приложениях ofs и seg. низя (и ненужно).

P.S. кстати, я уверен, что это должно быть написано в хелпе.

_________________
memento mori


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 985 • Страница 36 из 50<  1 ... 33  34  35  36  37  38  39 ... 50  >
-

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


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

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


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

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