Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2008, 15:07   #1
Corpse
 
Регистрация: 04.05.2008
Сообщений: 3
По умолчанию Задания по языку Pascal

Здравствуйте!
У меня тут проблема...сам я newbie в данном языке(Pascal 7.0), прошу помощи.
1) Дан массив ненулевых целых чисел. Определить, сколько раз меняется знак элементов массива при его просмотре. Например, в массиве 12,-4, 13, 77,-5,-99 знак меняется 3 раза.
2) Дан двумерный массив. Найти сумму элементов главной диагонали массива.
3)Дан текстовый файл. Переписать всю информацию данного во второй файл удвоив все буквы "в".
4) Нарисовать на экране круг красного цвета.
Заранее спасибо!
Corpse вне форума Ответить с цитированием
Старый 04.05.2008, 17:05   #2
motaro
Форумчанин
 
Регистрация: 10.07.2007
Сообщений: 104
По умолчанию

4
Код:
uses graph;
var device,mode:integer;
begin
 device:=0;
 initgraph (device,mode,'d:\borlandc\turbopascal\bgi');
 circle (320,240,100);
 setfillstyle (1,4);
 floodfill (350,275,white);
 readln;
 closegraph
end.

Последний раз редактировалось motaro; 04.05.2008 в 17:14.
motaro вне форума Ответить с цитированием
Старый 04.05.2008, 18:30   #3
Corpse
 
Регистрация: 04.05.2008
Сообщений: 3
По умолчанию

1-ая задача
Uses crt;
Const M=100;
Var i,n,k:integer;
Mas:array [1..m] of integer;
Begin
Clrscr;
K:=0;
Writeln('Vvedite dlinu massiva');
Readln(n);
Writeln('Vvedite chisla massiva');
For i:=1 to n do
Begin
Readln(mas[i]);
End;
For i:=1 to n do
If mas[i+1]*mas[i]<0 then K:=k+1;
Writeln('Znak meniaetsya ',k,' raz(a)');
Readln;
End.
Corpse вне форума Ответить с цитированием
Старый 04.05.2008, 19:40   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

только на надо за пределы массива выходить:
Код:
For i:=1 to n-1 do
  If mas[i+1]*mas[i]<0 then K:=k+1;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 04.05.2008, 19:40   #5
Xardas
Сисадмин
Форумчанин
 
Аватар для Xardas
 
Регистрация: 28.12.2007
Сообщений: 320
По умолчанию

Со второй и третьей думаю проблем не возникнет:

2: где-то так
Код:
//.................
s:=0;
for i:=1 to row do
for j:=1 to col do
if i=j then s:=s+a[i,j]
//...........
3: как-то так
Код:
//......................
reset(f1);
rewrite(f2);
while not eof(f1) do
begin
readln(f1,str);
for i:=1 to length(str) do
if str[i]='в' then insert('в',str,i);
write(f2,str);
end;
//..........................
Xardas вне форума Ответить с цитированием
Старый 04.05.2008, 19:43   #6
Corpse
 
Регистрация: 04.05.2008
Сообщений: 3
По умолчанию

Так, спасибо ребят, щас пойду творить...

Последний раз редактировалось Corpse; 04.05.2008 в 19:50.
Corpse вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь по языку Фортран GGfromthesky Помощь студентам 4 23.05.2009 17:07
Задания по командной строке...помогите!!! Pirat Помощь студентам 1 16.03.2008 06:53
необходимо решить задания Жека2110 Фриланс 2 10.02.2008 20:18
Какому языку посвятить себя? SputNIK Свободное общение 5 11.11.2007 23:34