IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> 2 задачи на массивы.Задача на определён. интеграл., Volvo, загляни пожалуйста ещё раз!
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


Люди добрые, я здесь первый раз, но очень надеюсь на вашу помощь!В общем в универе завал: по причине болезни накопился долг по информатике в 4 лабы...Лабы, как вы наверно уже поняли по Borland Pascal.Если вам не трудно не могли бы вы мне помочь?Может для вас эти задачи и покажутся простыми, но так как я пропустил 2 недели занятий, мне написать код этих программ не по силам...

Вот условия задач:



1)Обработка одномерных массивов:

Переписать подряд в массив А положительные элементы, а в массив Z отрицательные элементы массива В.

Массив В(20)



2)Обработка двумерных массивов:

В массиве В(4,4) найти произведение кубов главной диагонали.



3)Вычисление определённого интеграла приближёнными методами:

Подинтегральная функция: lnx (x в квадрате)

Метод численного решения: прямоугольников

Число отрезков: 50

Интервал интегрирования [1;2,5]





Заранее всем откликнувшимся огромное спасибо!

Сообщение отредактировано: Troy -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Troy
Вот что выдал поиск:
определенный интеграл
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата
Переписать подряд в массив А положительные элементы, а в массив Z отрицательные элементы массива В.

Делаем вот так:
Код

const
 n = 20;
 b: array[1 .. n] of integer =
   (1, 2, 3, 4, -5, 6, 7, -8, -9, -10,
    11, -12, 13, 14, -15, 16, -17, -18, 19, 20);

var
 i: integer;
 a, z: array[1 .. n] of integer;
 ia, iz: integer;
begin
 ia :=0; iz := 0;
 for i := 1 to n do
   if b[i] >= 0 then
     begin inc(ia); a[ia] := b[i] end
   else
     begin inc(iz); z[iz] := b[i] end;

 writeln('positive:');
 for i := 1 to ia do write(a[i]:4);
 writeln;

 writeln('negative:');
 for i := 1 to iz do write(z[i]:4);
 writeln;
end.


Цитата
В массиве В(4,4) найти произведение кубов главной диагонали.

Код
const
 n = 4;
 b: array[1 .. n, 1 .. n] of integer =
   ((1, 2, 3, 4), (3, 4, 5, 6), (5, 6, 7, 8), (7, 8, 9, 10));
var
 i: integer;
 p: longint;
begin
 p := 1;
 for i := 1 to n do
   p := p * sqr(b[i, i])*b[i, i];

 writeln('p = ', p);
end.


Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


volvo Огромное спасибо!Не представляешь,как выручил меня!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


volvo
Слушай, а с блок-схемами к этим программам не поможешь? :p2:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


volvo, слушай,скомпилировал программы...первые 2 вылетают при запуске, а третья всегда выдаёт значение интеграла равным 0...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 10
Пол: Мужской

Репутация: -  0  +


вот какой код получился у меня к 3 программе:
Цитата
Program lab_6;
Uses crt;
Var
a,b,dx,s,x,y:real;
n,i:integer;
begin
writeln ('v a');
readln (a);
writeln ('v b');
readln(dx);
n:=Round((b-a)/dx);
x:=a;
s:=0;
for i:=1 to n do
begin
y:=ln(x*x)/x*x;
s:=s+y*dx;
x:=x+dx;
end;
writeln('Znachenie integrala:',s:9:3);
readln;
end.


По-моему неправильно...
Всё, писец,кажись сегодня я завалюсь на сдаче лаб...

Сообщение отредактировано: Troy -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Troy
Я перед тем, как запостить программы, проверяю их...

Может, просто стоит добавить в конец моих программ Readln, чтобы ты успел увидеть результаты?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Цитата(volvo @ 17.12.04 17:19)
Делаем вот так:
Код


   if b[i] >= 0 then
     begin inc(ia); a[ia] := b[i] end
   else
     begin inc(iz); z[iz] := b[i] end;
end.

Мне кажется там вот так надо :
Код

if b[i]>0 then
 begin
      inc(ai);
      a[ai]=b[i];
 end
  else
 if b[i]<0 then
   begin
        inc(iz);
        z[iz]:=b[i];
   end;
       


Там же ведь условие строгое : записать положительные и отрицательные а с теми которые = 0 ничего делать не надо :D МОжет я и неправ конечно.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.04.2024 10:26
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name