HackUA - Взлом та безпека веб додатків

[ PlohihZagRusOK.net - поганих завантажень немає ] [ LoadsSell.net - Ми продаємо завантаження ]
Navigation
Назад   HackUA - Взлом та безпека веб додатків > Загальний > Програмування > Delphi & Pascal
Відповідь
 
Параметри теми Пошук у цій темі Параметри перегляду

  #31
Старий 08.02.2010, 22:41
student-99
Новачок
 
Дописів: 6
Провів на форумі:
1 г 45 хв 25 сек.
Репутация: 0
Типово

Спасіба за відписку!!!
Допоможіть ще додуматись до цеї задачі:
Перевірити, чи невведене слово словом-поліндромом(казак, піп, потоп - всмислі задом наперед і назад однаково читається).
Беручи до уваги, шо лабораторна по темі : работа з рядками (string) ( Робота в томуж ПАСКАЛІ)
student-99 зараз поза форумом   Відповісти з цитуванням
  #32
Старий 08.02.2010, 22:57
ADR
Delphi програміст
 
Дописів: 363
Провів на форумі:
1 тиж 5 дн 4 год
Репутация: 230
Надіслати повідомлення для ADR на ICQ Надіслати повідомлення для ADR на Skype
Типово

Код:
function reverseStr(str: string): string;
var
 i:integer;
begin
  result:='';
  for i:=1 to length(str) do result:=result+str[length(str)-i+1];
end;

procedure procedure2(slovo:string);
begin
  if (slovo=reverseStr(slovo)) then 
  showMessages('так!');
end;
або так
Код:
var
str:string;
begin
str:='';
for i:=1 to length(slovo) do 
  str:=str+slovo[length(str)-i+1];
if (str=slovo) then 
  ShowMessages('так!');
ADR зараз поза форумом   Відповісти з цитуванням
  #33
Старий 09.02.2010, 12:59
chezz
Модератор
 
Аватар для chezz
 
Дописів: 223
Провів на форумі:
4 дн 4 год 40 хв
Репутация: 265
Типово

Ну ви заганяєте хлопці, такі легкі завдання.
Робіть алгоритм спочатку, навіть якщо примітивна задача, а потім дуже легко писати.
__________________
I'm not Hacker, I'm a - security professional
chezz зараз поза форумом   Відповісти з цитуванням
  #34
Старий 10.02.2010, 19:34
student-99
Новачок
 
Дописів: 6
Провів на форумі:
1 г 45 хв 25 сек.
Репутация: 0
Типово

Допоможіть написати задачу в Паскалі.

Відомо, що фірма ЛОГОС випускає продукцію марок 12, 52 , 73 , 44 , 78, фірма Либідь випускає продукцію марок 11, 34, 56, 78, 23,73. За введеною маркою продукції визначити чи випускають дану обидві фірми.

Дякую за відповідь.
Використовувати множини.
student-99 зараз поза форумом   Відповісти з цитуванням
  #35
Старий 10.02.2010, 19:47
ADR
Delphi програміст
 
Дописів: 363
Провів на форумі:
1 тиж 5 дн 4 год
Репутация: 230
Надіслати повідомлення для ADR на ICQ Надіслати повідомлення для ADR на Skype
Типово

Код:
var
  str:string='20 символів';  //там вже придумаєш яким способом їх ввести
  i,j,kilc:integer;
const
  pryhol:string='бвгґ...короче приголосні'; 
begin
  kilc:=0;
  for i:=1 to 20 do
   for j:=1 to length(pryhol) do
      if (str[i]=pryhol[j]) then kilc:=kilc+1;
  ShowMessage(intToStr(Kilc)+'-проголосних');
end;
Код:
var
 i,j:integer;
  tak:boolean;
const
 lotos:array [0..4] of integer=(12,52,73,44,78);
 lybid:array [0..5] of integer=(11,34,56,78,23,73);
begin
 for i:=0 to 4 do
   for j:=0 to 5 do
     if (lotos[i]=lybid[j]) then tak:=true;

if tak then ShowMessage('òàê')
else ShowMessage('í³');
end;
ADR зараз поза форумом   Відповісти з цитуванням
  #36
Старий 11.02.2010, 00:01
shenmue
Новачок
 
Дописів: 5
Провів на форумі:
39 хв 31 сек.
Репутация: 5
Типово

Привіт, хто може детальніше розяснити цей код?

program proekt_10A;
uses crt,graph;
var a:array[1..70,1..20] of byte;
c,s,q,x,y,lx,ly:integer;
function square(x,y,lx,ly:integer):integer;
var i,j,s:integer;
c:char;
begin s:=0;
textcolor(2);
for i:=x to x+lx do
for j:=y to y+ly do if a[i,j]=0 then s:=1;
if s=0 then
for i:=x to x+lx do
for j:=y to y+ly do
begin
gotoxy(i,j);
write(a[i,j]);
end;
if s=0 then square:=1
else square:=0;
end;
begin textcolor(15);
clrscr;
randomize;
{zapovnennja masyva nyljamy ta odunutsjamy}
for y:=1 to 20 do for x:=1 to 70 do begin
c:=random(40);
if c=39 then a[x,y]:=0 else a[x,y]:=1;
end; {vuvid masyvu na ekran}
for y:=1 to 20 do for x:=1 to 70 do begin
gotoxy(x,y);
write(a[x,y]);
end;
s:=1400;
q:=0; {pochynajemo z macyvu masymalno mozlyvoi ploshchi} repeat gotoxy(40,22);write(' '); gotoxy(40,22);write(s);
ly:=1;
repeat {poshuk maksymalnoi vysoty masyvu}
ly:=1;
repeat {poshuk maksymalnoi shyryny masyvu}
if lx*ly=s then {ploshcha prjamokutnyka}
begin
y:=1; {perebyrajemo vsi mozlyvi koordynaty Y u livoji vershyny}
repeat
x:=1; {perebyrajemo vsi mozlyvi koordynaty X u livoi vershyny}
repeat
q:=square(x, y, lx,ly); {perevirjajemo prjamokutnyk na najavnist nuliv}
x:=x+1;
if (x+lx>70) then x:=70;
until (q=1)or(x=70); {zavershujem jakshcho znajdeno prjamokutnyk abo dosjahnuto kintsja prjamokutnyka po horyzontali}
y:= y+1;
if y+ly>20 then y:=20;
until (q=1)or(y=20); {zavershujem jakshcho znajdeno prjamokutnyk abo dosjahnuto kintsja prjamokutnyka po vertykali}
end;
lx:=lx+1;
until (q=1)or(lx=70); {zavershujem jakshcho znajdeno prjamokutnyk abo velychyna shyryny dosjagla maksymymy}
ly:=ly+1;
until (q=1)or(ly=20); {zavershujem jakshcho znajdeno prjamokutnyk abo velychyna vysoty dosjagla maksymymy}
s:=s-1;
until (s=1)or(q=1); {zavershujem jakshcho znajdeno prjamokutnyk abo velychyna ploshchi dosjagla odynytsi}
end.
shenmue зараз поза форумом   Відповісти з цитуванням
  #37
Старий 11.02.2010, 00:03
shenmue
Новачок
 
Дописів: 5
Провів на форумі:
39 хв 31 сек.
Репутация: 5
Типово

умова завдання (код вище) : дано двовимірний масив заповнений випадковим чином нулями та одиницями,найти прямокутник найбільшої площі заповнений одиницями.
shenmue зараз поза форумом   Відповісти з цитуванням
  #38
Старий 11.02.2010, 14:10
Voron
Головний модератор
 
Аватар для Voron
 
Дописів: 248
Провів на форумі:
1 тиж 3 дн 1 год
Репутация: 270
Типово

Код потрібно писати використовуючи тегі [CОDE][/CОDE] (тут навмисне замінив англійське O на українське), це збереже форматування.

Мабуть програма не працює?
Якщо так то є підозри можливо проблеми з цим:
Код:
    ly:=1;
    repeat {poshuk maksymalnoi vysoty masyvu}
      ly:=1; // здається тут потрібно lx (2 рядками вище вже є ly:=1)
Ось код програми з деякими коментарями (українською мовою, щоб можна було відрізнити від оригінальних, при компілюванні їх потрібно стерти):

Код:
program proekt_10A;
uses crt,graph;
var a:array[1..70,1..20] of byte;
    c,s,q,x,y,lx,ly:integer;

function square(x,y,lx,ly:integer):integer;
{перевіряє підмасив на наявність "0", якщо знайдений 
фунція приймає значення 0, якщо ні - 1,
крім того даний підмасив "підсвічується"}
var i,j,s:integer;
    c:char;
begin 
  s:=0;
  textcolor(2);
  for i:=x to x+lx do
    for j:=y to y+ly do 
	  if a[i,j]=0 then s:=1;
  if s=0 then
    for i:=x to x+lx do
      for j:=y to y+ly do
      begin
        gotoxy(i,j);
        write(a[i,j]);
      end;
  if s=0 then square:=1
  else square:=0;
end;

begin 
  textcolor(15); // задається колір тексту
  clrscr; // очищається екран
  randomize; {встановлюється модуль випадкових велечин
       (не знаю як краще описати)}
  {zapovnennja masyva nyljamy ta odunutsjamy}
  for y:=1 to 20 do 
    for x:=1 to 70 do
	{генерується випадковий масив 20x70 з "0" та "1"}
    begin
      c:=random(40);
      if c=39 then a[x,y]:=0 else a[x,y]:=1;
	  {ймовірність що конкретний елемент масиву буде "0" - 2,5%} 
    end;
  {vuvid masyvu na ekran} 
  {дійсно виводиться на екран згенерована матриця}
  for y:=1 to 20 do 
    for x:=1 to 70 do
      begin
        gotoxy(x,y);
        write(a[x,y]);
      end;
  s:=1400; // "площа" масива 20x70 = 1400
  q:=0; {pochynajemo z macyvu masymalno mozlyvoi ploshchi} 
  repeat
  {шукається підмасив розміром lx на ly який не містить "0"}  
    gotoxy(40,22); //не розумію чому саме 40, 22
    write(' '); 
    gotoxy(40,22);
    write(s);
    ly:=1;
    repeat {poshuk maksymalnoi vysoty masyvu}
      ly:=1; // здається тут потрібно lx (2 рядками вище вже є ly:=1)
      repeat {poshuk maksymalnoi shyryny masyvu}
        if lx*ly=s then {ploshcha prjamokutnyka}
        begin
          y:=1; {perebyrajemo vsi mozlyvi koordynaty Y u livoji vershyny}
          repeat
            x:=1; {perebyrajemo vsi mozlyvi koordynaty X u livoi vershyny}
            repeat
              q:=square(x, y, lx,ly); {perevirjajemo prjamokutnyk na 
                                           najavnist nuliv}
              x:=x+1;
              if (x+lx>70) then x:=70;
            until (q=1)or(x=70); {zavershujem jakshcho znajdeno 
               prjamokutnyk abo dosjahnuto kintsja prjamokutnyka po horyzontali}
            y:= y+1;
            if y+ly>20 then y:=20;
          until (q=1)or(y=20); {zavershujem jakshcho znajdeno prjamokutnyk 
                                abo dosjahnuto kintsja prjamokutnyka po vertykali}
        end;
        lx:=lx+1;
      until (q=1)or(lx=70); {zavershujem jakshcho znajdeno prjamokutnyk 
                            abo velychyna shyryny dosjagla maksymymy}
      ly:=ly+1;
    until (q=1)or(ly=20); {zavershujem jakshcho znajdeno prjamokutnyk 
                         abo velychyna vysoty dosjagla maksymymy}
    s:=s-1;
  until (s=1)or(q=1); {zavershujem jakshcho znajdeno prjamokutnyk abo
                                   velychyna ploshchi dosjagla odynytsi}
end.
Якщо вище написане не допомогло, то спробую вдома прокомпілювати цю програму.
Voron зараз поза форумом   Відповісти з цитуванням
  #39
Старий 14.02.2010, 23:20
student-99
Новачок
 
Дописів: 6
Провів на форумі:
1 г 45 хв 25 сек.
Репутация: 0
Типово

Серед 20 символів введених користувачем визначити кількість голосних букв.
В ПАСКАЛІ. Якщо не тяжко, то просьба весь код
student-99 зараз поза форумом   Відповісти з цитуванням
  #40
Старий 14.02.2010, 23:40
ADR
Delphi програміст
 
Дописів: 363
Провів на форумі:
1 тиж 5 дн 4 год
Репутация: 230
Надіслати повідомлення для ADR на ICQ Надіслати повідомлення для ADR на Skype
Типово

весь код кинути не можу тому що не знаю паскаля а лише делфі...
Код:
procedure proc(str:string);
var
  i,n:integer;
const
  s:string='уеїіаояиє';
begin
  n:=0;
  for i:=1 to length(str) do
    if (pos(str[i],s)<>0) then n:=n+1;
  showMessages(intToStr(n)'голосних');
end;
ADR зараз поза форумом   Відповісти з цитуванням
  #41
Старий 14.02.2010, 23:41
1vanu4
Просунутий
 
Аватар для 1vanu4
 
Дописів: 186
Провів на форумі:
6 дн 8 год 3 хв
Репутация: 119
Типово

Цитата:
Допис від student-99 [Посилання заблоковане: Зареєструйтесь!]
pleace
Кхм...кхм... please
1vanu4 зараз поза форумом   Відповісти з цитуванням
  #42
Старий 14.02.2010, 23:47
#@!@#
Новачок
 
Дописів: 67
Провів на форумі:
2 дн 11 год 36 хв
Репутация: 132
Надіслати повідомлення для #@!@# на ICQ
Типово

Народ мож хто знає С??)
#@!@# зараз поза форумом   Відповісти з цитуванням
  #43
Старий 15.02.2010, 00:07
ADR
Delphi програміст
 
Дописів: 363
Провів на форумі:
1 тиж 5 дн 4 год
Репутация: 230
Надіслати повідомлення для ADR на ICQ Надіслати повідомлення для ADR на Skype
Типово

Цитата:
Народ мож хто знає С??)
мають бути такі але для цього є окремий розділ на форумі
ADR зараз поза форумом   Відповісти з цитуванням
  #44
Старий 15.02.2010, 00:26
#@!@#
Новачок
 
Дописів: 67
Провів на форумі:
2 дн 11 год 36 хв
Репутация: 132
Надіслати повідомлення для #@!@# на ICQ
Типово

Цитата:
Допис від ADR [Посилання заблоковане: Зареєструйтесь!]
мають бути такі але для цього є окремий розділ на форумі

дякую за просвітлення:-)
#@!@# зараз поза форумом   Відповісти з цитуванням
  #45
Старий 15.02.2010, 20:48
gron1k
Модератор
 
Аватар для gron1k
 
Дописів: 97
Провів на форумі:
3 дн 8 год 12 хв
Репутация: 69
Надіслати повідомлення для gron1k на ICQ
Типово

Цитата:
Допис від #@!@# [Посилання заблоковане: Зареєструйтесь!]
Народ мож хто знає С??)
Яке саме С#, C++ ?
gron1k зараз поза форумом   Відповісти з цитуванням
Відповідь

Параметри теми Пошук у цій темі
Пошук у цій темі:

Розширений пошук
Параметри перегляду

Ваші права у розділі
Ви не можете створювати нові теми
Ви не можете відповісти на повідомлення
Ви не можете додавати вкладення
Ви не можете редагувати Ваші повідомлення

BB code is Увімк.
Усмішки Увімк.
[IMG] код Увімк.
HTML код Вимк.

Швидкий перехід

Схожі теми
Тема Автор Розділ Відповідей Останній допис
Питання по Delphi & Pascal ZEXEL Delphi & Pascal 80 13.08.2010 20:28
Лабораторні роботи по C та C++ ZEXEL C/C++/C# 26 09.04.2010 00:16
PPtP & OpenVPN Service secreTSline Продаж, Купiвля , Обмін, Робота 10 18.03.2010 10:55


Часовий пояс GMT +3. Поточний час: 04:42.
Powered by CMS Переклад: © Віталій Стопчанський, 2004-2009