|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
03.06.2008, 14:32 | #1 |
Новичок
Джуниор
Регистрация: 03.06.2008
Сообщений: 2
|
Товарищи програмисты помогите по ПАСКАЛЮ.
Уважаемые програмисты.
мне нужно сдать несколько программ по паскалю чтобы получить допуск к зачёту.но к сожелению я немного недопонимаю в нём. Если есть такая возможность помогите, программы не такие уж и трудные. №1 ТЕМА:ДВУМЕРНЫЕ МАССИВЫ Ввести размер прямоугольной матрицы и значения её элементов. Построить вектор B,где B(i)- минимальное значение в i-ой строке. №2 ТЕМА:РАБОТА СО СТРОКАМИ Ввести строку текста.Строка может быть пустая или из одних пробелов.Разделители продставляют собой множество - "/?,.<;>:'!"*%". Слово -любая последовательность символов, ограниченная с одной или 2-х сторон разделителями.(примечание: никаких дополн. строк создавать нельзя!) Определить количество слов содержащих заданный символ К. №3 ТЕМА:ОДНОМЕРНЫЕ МАССИВЫ Вводится длина одномерного массива (вектора) и значения его элементов. Все элементы массива, меньшие заданного значения,и их номера записать в новые массивы.Вывести новые массивы на экран. заданное значение вводится с клавиатуры. №4 ТЕМА:ЦИКЛЫ Вычислить сумму ряда. Вычисления заканчивать при достижении заданной степени точности (т.е.очередной член ряда становится меньше введенной точности, либо разность между двумя соседними членами ряда становятся меньше введенного значения точности) cos(x)=1 - x^2/2! + x^4/4! -...+ (-1)^n * x^2n/(2n)!+... Уважаемые програмисты,очень прошу вас помочь.... |
03.06.2008, 14:58 | #2 | |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
Цитата:
|
|
03.06.2008, 15:04 | #3 |
Новичок
Джуниор
Регистрация: 03.06.2008
Сообщений: 2
|
да я не понимаю с какой стороны можно подойти к решению этих задач.
|
03.06.2008, 15:32 | #4 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
Хих... Для двумерки
procedure create (n,m:byte; var a:mas); var i,j:byte; begin for i:=1 to n do for j:=1 to m do begin write ('Введите [',i,',',j,']'); read(a[i,j]); end; end; Это создание procedure ouput (a:mas;n,m:byte); var i,j:byte; begin for i:=1 to n do begin for j:=1 to m do write(a[i,j]:5:2,' '); writeln; end; end; Вывод на экран procedure mins(a:mas; n,m:byte; var b: odnmas); var i,j,min:byte; begin for i:=1 to n do begin min:=a[i,1]; for j:=1 to m do if a[i,j]<min then min:=a[i,j]; end; b[i]:=min; end; end; Для формирования вектора mas - типизируешь как двумерный, а odnmas - как одномерный |
03.06.2008, 15:36 | #5 |
Новичок
Джуниор
Регистрация: 03.06.2008
Сообщений: 2
|
danekne,примного благодарен.
|
03.06.2008, 15:49 | #6 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
В конце добавь вывод вектора на экран, примерно так:
Код:
|
03.06.2008, 16:13 | #7 |
Форумчанин
Регистрация: 12.02.2007
Сообщений: 360
|
|
03.06.2008, 16:55 | #8 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
А лучше вообще без процедур. Процедуры, которые используются в программе только один раз просто перегружают программу.
Смысл подпрограмм вообще-то, чтобы не писать в программе несколько раз один и тот же код. |
03.06.2008, 16:59 | #9 |
Новичок
Джуниор
Регистрация: 03.06.2008
Сообщений: 2
|
товарищ пупорев а вы не подскажите а как можно без процедур эту программу офформить...
а то уж больно мудрено для моего уровня познания. Последний раз редактировалось BEAR696; 03.06.2008 в 17:05. |
03.06.2008, 19:54 | #10 |
Старожил
Регистрация: 13.10.2007
Сообщений: 2,740
|
uses crt;
var a:array[1..20,1..20]of integer; b:array[1..20]of integer; n,m,i,j,sum,max,min,k:integer; begin clrscr; write('Kolichestvo strok= ');readln(n); write('Kolichestvo stolbcov= ');readln(m); writeln('Vvedite ',n*m, 'chisel:'); for i:=1 to n do for j:=1 to m do read(a[i,j]); //вводим в строку через пробел числа readln; clrscr; //очищаем экран writeln('Matrica:');//выводим в виде матрицы for i:=1 to n do begin for j:=1 to m do write(a[i,j]:4); writeln; end; readln; for i:=1 to n do begin min:=a[1,j]; for j:=1 to m do //проходим по столбцам if a[i,j]<min then begin min:=a[i,j]; //находим минимальное end; b[i]:=min; //заносим в массив end; Writeln('Vector:'); for i:=1 to n do write(b[i],' '); //выводим массив на экран readln end. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Товарищи многомудрые програмисты!!! Спасите бедную студентку ) | eliana | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 04.06.2008 16:37 |
Помогите решить задачи по Паскалю | Alexsandr08 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 31.05.2008 19:50 |
Помогите с задачками по Паскалю | NTFS | Помощь студентам | 3 | 22.04.2008 21:27 |
помогите с курсовой по паскалю. | zem@1111 | Помощь студентам | 1 | 12.09.2007 15:42 |