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




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 11 
  Версия для печати (полностью) Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 
Прилепленное (важное) сообщение

Ситуация такая - пообещал девчонке помочь с лабораторной работой по информатике, надеялся, что поможет один товарищ, но он подвел!!! :abuse: Сам я в Turbo Pascal не в зуб ногой! Точнее кое что еще помню, но разбираться, учить и вспоминать нет времени, сдавать уже все нужно! Товарищи помогите кто чем может, не дайте ухайдокаться в грязь лицом, короче выручайте!

Вот теория:

http://cp.people.overclockers.ru/cgi-bi ... ___3_1.doc
http://cp.people.overclockers.ru/cgi-bi ... ___3_2.doc

Это практическое задание:

#77

несмотря на то, что обведен пункт "а" нужно сделать и под "б" тоже!

Еще нужно составить блок схему к этой лабе - что это такое я так и не понял, судя по всему это краткое тело программы на бумажке! Если кто знает как составлять - подскажите.

Буду благодарен за любую помощь, пива бы налил, только по интернету не нальешь! :( Если кто из Пензы сделает - смело рассчитывайте! :wink:



Партнер
 

Member
Статус: Не в сети
Регистрация: 08.05.2006
Откуда: Москва
6.a
Код:
program qwerty;
var sum, x: real;
      i, n: integer;

begin
   read (x);
   read (n);
   sum := 0;
   for i := 0 to n do sum := (sum + (x + i) / sqr (x));
   write (sum);
end.


6.б
Код:
program swap;
const n = 10;
        m = 15;
var a, b: array [1..n, 1..m] of integer;
      buff: array [1..m] of integer;
      i, j: integer;
begin
   write (' kakie stroki smenit? ');
   read (i);
   read (j);
   buff := a[i];
   a[i] := b[j];
   b[j] := buff; //я тут глюкнул =)
end.


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


Последний раз редактировалось Popik 27.11.2006 19:01, всего редактировалось 1 раз.

 

TSC! Russia member
Статус: Не в сети
Регистрация: 24.07.2004
Откуда: Санкт-Петербург
Фото: 4
Popik писал(а):
Обрати внимание: по стандарту паскаля строки одинаковой длины можно присваивать без цикла.

Удобно, а я тут 10 мин катал циклы :oops:

_________________
It's nice to be important,but it's more important to be nice! Be nice-help people defeat cancer etc! https://forums.overclockers.ru/viewforum.php?f=21


 

Спасибо. Надеось прокатит! И еще надеюсь что ее не спросят как все это писалось и для чего все это нужно :D


 

*Cofradia Intel*
Статус: Не в сети
Регистрация: 06.12.2005
Откуда: Ростов-на-Дону
А у нас вот вторая задача явно бы не прокатила, ибо заведен дополнительный массив.. не есть гут.

_________________
modlabs.net


 

Member
Статус: Не в сети
Регистрация: 14.08.2004
Откуда: Москва
Popik писал(а):
Код:
a[i] := b[j];
   b[j] := a[i];

ты хотел написать
Код:
b[j]:=buff;

? :)


 

DZhon И что же делать? Как должно быть?


 

Member
Статус: Не в сети
Регистрация: 22.06.2004
Откуда: S-Pb
во второй задаче неплохо бы еще матрицу чем-нибудь проинициализировать
анекдот про буратину и яблоки слышали?

например так
Код:
count := 1;
for i:=1 to n do
   for j:=1 to m do
      begin a[i,j]:=count; inc(count) end;


Popik писал(а):
buff := a[i];
a[i] := b[j];
b[j] := a[i];

вот это имхо бред :)
Цитата:
buff := a[i];
a[i] := a[j];
a[j] := buff;

Добавлено спустя 5 минут, 22 секунды
Код:
program swap;
const n = 10;
        m = 15;
var a: array [1..n, 1..m] of integer;
      buff: array [1..m] of integer;
      i, j,count: integer;
begin
   count := 1;
   for i:=1 to n do
      for j:=1 to m do
         begin a[i,j]:=count; inc(count) end;
   write (' kakie stroki smenit? ');
   read (i);
   read (j);
   buff := a[i];
   a[i] := a[j];
   a[j] := buff;

//print result
   writeln;
   for i:=1 to n do
      begin
      for j:=1 to m do
         write (a[i,j], ' ');
      writeln;
      end;
end.

Добавлено спустя 1 минуту, 41 секунду
а первую суммы я бы упростил, но это только для студентов математиков


 

Member
Статус: Не в сети
Регистрация: 17.08.2006
Откуда: Донецк
интересно а первую задачу, кто нибудь так решит?
Код:
sum=((n+1)*x+(1+n)*n/2)/sqr(x);

Я б за такое решение сразу отлично поставил! Лучше 10 минут потратить на оптимизацию, чем циклы впустую гонять.

_________________
Каждый имеет право выбирать свою дорогу в ад!


 

*Cofradia Intel*
Статус: Не в сети
Регистрация: 06.12.2005
Откуда: Ростов-на-Дону
Jaracacas да циклам тут быть, если скажут не заводить второй вектор :) ... или можно... хотя это по сути реализация идеи с веткором по-другому - матрица объявляется в начале и статически, объявить ей размер на одну строку больше и использовать эту нижнюю строку, как буфер, а при вводе/выводе элементов делать вид, что ее нету :D но хз :) это не очень...

_________________
modlabs.net


 

Member
Статус: Не в сети
Регистрация: 22.06.2004
Откуда: S-Pb
есть алгоритм свопа для двух числовых переменных, без использования свопа.
НО это для продвинутых студентов. а судя по задачам девушка не из таких. так что надо по проще но эффективно.
а главное чтобы въехал даже тупой :)
знаем эти грабли, проходили :)
Добавлено спустя 47 секунд
sergey_g писал(а):
Я б за такое решение сразу отлично поставил

sergey_g писал(а):
а первую суммы я бы упростил

:)


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 11 
-

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


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

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


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

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