X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V  < 1 2
Открыть тему
Тема закрыта
> Знающим паскаль, помощь требуется..
Imperial
Imperial
Topic Starter сообщение 29.4.2009, 22:25; Ответить: Imperial
Сообщение #12


А что значит clrscr; ?))
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
darkRoma
darkRoma
сообщение 29.4.2009, 22:26; Ответить: darkRoma
Сообщение #13


(Boxster @ 29.4.2009, 21:22) *
Странная фигня с предыдущим моим сообщением, написал тогда отдельно каждый запрос:

program exe;
uses crt;
var i,l,k: integer;
    x,y: string;
begin
clrscr;
writeln('Vvedite X i Y');
readln(x);
readln(y);
if length(x) < length(y) then l:=length(x) else l:=length(y)
for i:=1 to l do
if copy(x,i,1)=copy(y,i,1) then k:=k+1;
writeln('4islo sovpadayushix bykv=',k);
readln;
end.


Так у меня заработало!


Согласен. Так уже работет. Моя версия тоже работает, если запросы по-отдельному вводить. Скорее всего всё-таки какой-то глюк.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Boxster
Boxster
сообщение 29.4.2009, 22:27; Ответить: Boxster
Сообщение #14


А что значит clrscr; ?))


Это функция, подключаемая через uses crt;, очищает экран перед новым выполнением скрипта...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Clayman
Clayman
сообщение 29.4.2009, 22:39; Ответить: Clayman
Сообщение #15


(Boxster @ 29.4.2009, 22:22) *
if copy(x,i,1)=copy(y,i,1) then k:=k+1;

Это жестко!
Строка это массив символов, поэтому лучше сравнивать так
if x[i]=y[i] then k:=k+1;

вместо того чтобы вызывать постоянно функцию copy().

Кстати, паскаль компилирует код, а не интерпретирует, поэтому
...очищает экран перед новым выполнением скрипта...

программу на паскале скриптом уж никак не назовешь.

Сообщение отредактировал Clayman - 29.4.2009, 22:42


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Boxster
Boxster
сообщение 29.4.2009, 22:42; Ответить: Boxster
Сообщение #16


вместо того чтобы вызывать постоянно процедуру copy().


Да, не спорю, можно и так, но поскольку скрипт небольшой, то не так принципиально...

Сообщение отредактировал Boxster - 29.4.2009, 22:42
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Clayman
Clayman
сообщение 29.4.2009, 22:44; Ответить: Clayman
Сообщение #17


(Boxster @ 29.4.2009, 22:42) *
Да, не спорю, можно и так, но поскольку скрипт небольшой, то не так принципиально...

В данном случае, важен не размер программы, а длины строк.
Из-за такой "непринципиальности" тормозят простейшие программы.

Сам пару лет работал преподавателем программирования и алгоритмизации.
Если бы мне студент принес такую программу, отправил бы дорабатывать smile.gif
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Imperial
Imperial
Topic Starter сообщение 29.4.2009, 23:15; Ответить: Imperial
Сообщение #18


Всем спасибо за помошь!!)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Imperial
Imperial
Topic Starter сообщение 4.5.2009, 21:45; Ответить: Imperial
Сообщение #19


Вот ещё одна задачка:
Найти площадь фигуры y=sin2x. Посчитать площадь методом трапеции. Границы (0;4)

Кто смогёт помочь?)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Boxster
Boxster
сообщение 4.5.2009, 23:44; Ответить: Boxster
Сообщение #20


К сожалению, такого уровня не проходил, поэтому придётся довольствоваться тем, что отсыкал во всемирной паутине. Исходник выложен на одном из блогов с таким названием - "Информационный блог актуальной халявы" happy.gif
На работоспособность проверил, какие-то недочёты исправил...

program integral;
var
n,i : integer;
a,b,shag,sum,itog : real;

function F(x:real):real;
begin
  F:=sin(2*x);
end;

begin
write('na4alo integrirovaniya a = '); readln(a);
write('konec integrirovaniya b = '); readln(b);
write('koli4estvo razbieniy intervala n = '); readln(n);

shag:=(b-a)/n;
sum:=0;
for i:=1 to n-1 do
  sum := sum + F(shag*i+a);
sum := sum + (F(a)+F(b))/2;

itog:=(b-a)/n * sum;
writeln('integral = ', itog:0:5);
readln;
end.


Сообщение отредактировал Boxster - 4.5.2009, 23:47
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
darkRoma
darkRoma
сообщение 4.5.2009, 23:50; Ответить: darkRoma
Сообщение #21


(Imperial @ 4.5.2009, 20:45) *
Вот ещё одна задачка:
Найти площадь фигуры y=sin2x. Посчитать площадь методом трапеции. Границы (0;4)

Кто смогёт помочь?)


А что есть методо трапеции? Можете его описать/расписать? + дать пару формул =)

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V  < 1 2
Открыть тему
Тема закрыта
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Ищу работу: php+SQL, html, CSS, JavaScript, C++, Делфи, Паскаль...
Дёшево, срочно
3 WebsProject 2619 6.11.2009, 7:35
автор: viktiv
Открытая тема (нет новых ответов) Ищу работу: php+SQL, html, CSS, JavaScript, C++, Делфи, Паскаль... Дёшево, срочно
12 WebSGo 8201 8.2.2009, 0:40
автор: -NikaM-
Открытая тема (нет новых ответов) Ищу работу: php+SQL, html, CSS, JavaScript, C++, Делфи, Паскаль...
Дёшево, срочно
1 CyberX 2406 30.10.2008, 15:16
автор: CyberX


 



RSS Текстовая версия Сейчас: 17.4.2024, 3:51
Дизайн