Четверг, 09.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 1
  • 1
Модератор форума: Seqular, Pavel  

СРОЧНО НУЖНА ПОМОЩЬ!ОЧЕНЬ!
SATANAДата: Воскресенье, 09.03.2008, 18:16 | Сообщение # 1
Новичок
Группа: Пользователи
Сообщений: 2
Репутация: 0
Замечания: 0%
Статус: Offline
Программирование с использованием процедур и функций
Разработать программу со следующими процедурами и функциями:
ввод массива;
вывод массива;
транспонирование массива;
поиск максимума;
поиск минимума;
расчет суммы элементов;
расчет количества четных элементов массива;
вывод фамилии и инициалов ("Иванов В.П.), по заданным фамилии, имени, отчеству. (Предусмотреть ввод пустых строк имени и отчества - "Иванов").
Оформить схемы алгоритмов первых трех процедур и функций.

и еще

Работа с файлами
Вывести на экран текст программы.
Занести в типизированный файл дробные числа (количеством не менее 100). Можно использовать генератор случайных чисел, функции и т.п. Рассчитать среднее значение а) по всему набору б) по второй половине.

 
AlexanderДата: Воскресенье, 09.03.2008, 20:34 | Сообщение # 2
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
1.
Code
procedure InPut(var Arr:MyArray;Size:BYTE);
var
    i:BYTE;
begin
    for i:=1 to Size do
       Read(Arr[i]);
end;

2.
Code
procedure OutPut(Arr:MyArray;Size:BYTE);
var
    I:BYTE;
begin
    for i:=1 to Size do
       Write(Arr[i]);     {в зависимости от ситуации задать формат вывода}
end;

3.
Сам-то понял что написал? Транспонировать можно только матрицы, а массив, это матрица вида array[1..Size,1..1]. Таким образом после транспонирования массива ты получишь матрицу вида array[1..1,1..Size].
4.
Code
function FindMax(Arr:MyArray;Size:BYTE):BYTE;
var
    i,Result:BYTE;
begin
    Result:=1;
    for i:=2 to Size do
       if Arr[i]>Arr[Result] then
          Result:=i;
    FindMin:=Result;
end;

5. Аналогично 4.
6.
Code
function Sum(Arr:MyArray;Size:BYTE):real;
var
    i:BYTE;
    Result:real;
begin
    Result:=Arr[1];
    for i:=2 to Size do
       Result:=Result+Arr[i];
    Sum:=Result;
end;

7.
Code
procedure OutIni(SurName,Name,hz:string);
begin
    Write(SurName);
    if Name<>'' then
       Write(' ',Name[1],'.',hz[1],'.');
    WriteLn;
end;

8. А за пивом не сбагать?
Вторую сейчас лень писАть, может вечером.
З.Ы. А где ты учишься, что такие задачи вызывают у тебя затруднение? wacko


Скажем дружно- нафиг нужно!
 
SATANAДата: Понедельник, 10.03.2008, 16:51 | Сообщение # 3
Новичок
Группа: Пользователи
Сообщений: 2
Репутация: 0
Замечания: 0%
Статус: Offline
Блин ты прикинь назадавл мужик скоро контрошка.Очеповский.В МЭСИ учусь.Сам нифига не объяснил.Это на делфи,консоль аппликатион.
 
AlexanderДата: Вторник, 11.03.2008, 00:07 | Сообщение # 4
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Грубо говоря так:
Code
uses crt;
var
    F:File of real;
    i:BYTE;
    x,sum,sum_2:real;
begin
    ClrScr;
    Sum:=0;
    Sum_2:=0;
    Assign(F,'1');
    ReWrite(F);
    randomize;
    for i:=1 to 100 do
       begin
          x:=Random(100)/(Random(99)+1);
          Write(F,x);
       end;
    Close(F);
    Reset(F);
    for i:=1 to 50 do
       begin
          Read(F,x);
          Sum:=Sum+x;
       end;
    for i:=1 to 50 do
       begin
          Read(F,x);
          Sum:=Sum+x;
          Sum_2:=Sum_2+x;
       end;
    WriteLn('Всего: ',Sum:7:3,#10,#13,'Во второй половине: ',Sum_2:7:3);
    ReadKey;
end.

Проверял в паскале. В делфи проверить не могу т.к. его у меня нет(VSC++ Rulez_z).


Скажем дружно- нафиг нужно!
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;