Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [pasca]сумма элементов, сумма эдементов массива 
V
    Опции темы
xF1x
Дата 16.9.2008, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



Всем доброго времени суток! такая вот ШКОЛЬНАЯ задача! Составить программу для нахождения суммы ЦЕЛОЧИСЛЕННОГО массива состоящего из 20 элементов ввод чисел производится случайным числом! НУЖНО ЧТОБЫ БЫЛИ ПОДПРОГРАММЫ(PROCEDURE) на вводе на выводе на сумме элементов массива. и так же найти одинаковые значения элементов, если их нет то вывести на экран! только что начали изучать подпрограммы. заранее спасибо!
PM MAIL   Вверх
THandle
Дата 16.9.2008, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Ну вот, только не до конца понятно вот это условие:

Цитата(xF1x @  16.9.2008,  13:57 Найти цитируемый пост)
на вводе на выводе на сумме элементов массива. и так же найти одинаковые значения элементов, если их нет то вывести на экран!


Как это вывести на экран если их нет?  smile 
В общем смотри. Если чо не так то подправим.

Код

program Project1;

const
  SIZE = 20;

var
  A: array [1..SIZE] of Integer;
  Summ: Integer;

procedure EnterArray;
var
  i: Integer;
begin
  for i := 1 to SIZE do
    begin
      Write('Enter ', i, ' array element: ');
      ReadLn(A[i]);
    end;
end;

procedure SummArray;
var
  i: Integer;
begin
  Summ := 0;
  for i := 1 to SIZE do
    Summ := Summ + A[i];
  WriteLn('Summ: ', Summ);
end;

procedure ResultArray;
var
  i, j: Integer;
begin
  for i := 1 to SIZE do
    for j := i to SIZE do
      if i <> j then
        if A[i] = A[j] then
          WriteLn('A[', i, '] = ', A[i], ' and A[', j, '] = ', A[j], ' is equal');
end;

begin
  EnterArray;
  SummArray;
  ResultArray;
  ReadLn;
end.

PM   Вверх
xF1x
Дата 16.9.2008, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



Все хорошо! но вывести нужно если есть одинаковые элементы а если их нет то вывести сообщение типа" одинаковых элементов нет"
PM MAIL   Вверх
THandle
Дата 16.9.2008, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Код

program Project1;

const
  SIZE = 20;

var
  A: array [1..SIZE] of Integer;
  Summ: Integer;

procedure EnterArray;
var
  i: Integer;
begin
  for i := 1 to SIZE do
    begin
      Write('Enter ', i, ' array element: ');
      ReadLn(A[i]);
    end;
end;

procedure SummArray;
var
  i: Integer;
begin
  Summ := 0;
  for i := 1 to SIZE do
    Summ := Summ + A[i];
  WriteLn('Summ: ', Summ);
end;

procedure ResultArray;
var
  i, j: Integer;
  Equals: boolean;
begin
  Equals := false;
  for i := 1 to SIZE do
    for j := i to SIZE do
      if i <> j then
        if A[i] = A[j] then
          begin
            WriteLn('A[', i, '] = ', A[i], ' and A[', j, '] = ', A[j], ' is equal');
            Eqauls := true;
          end;
  if not Equals then
    WriteLn('Equal elements not found');
end;

begin
  EnterArray;
  SummArray;
  ResultArray;
  ReadLn;
end.


Корявовато конечно, но должно работать smile
PM   Вверх
xF1x
Дата 16.9.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



Equals := false 
Eqauls := true; не проходили, без этого никак нельзя? а то скажут откуда я это вообще взял
PM MAIL   Вверх
THandle
Дата 16.9.2008, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



xF1x, это ж обычная булева переменная... как вы могли её не проходить? smile Вообще что это за обучение? В школе информатика?

Ну если надо сча как нить еще сделаю...
PM   Вверх
xF1x
Дата 16.9.2008, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



вот все изучали а Equals := false Eqauls := true; не изучали
PM MAIL   Вверх
THandle
Дата 16.9.2008, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Код

program Project1;

const
  SIZE = 5;

var
  A: array [1..SIZE] of Integer;
  Summ: Integer;

procedure EnterArray;
var
  i: Integer;
begin
  for i := 1 to SIZE do
    begin
      Write('Enter ', i, ' array element: ');
      ReadLn(A[i]);
    end;
end;

procedure SummArray;
var
  i: Integer;
begin
  Summ := 0;
  for i := 1 to SIZE do
    Summ := Summ + A[i];
  WriteLn('Summ: ', Summ);
end;

procedure ResultArray;
var
  i, j: Integer;
  Equals: Integer;
begin
  Equals := 0;
  for i := 1 to SIZE do
    for j := i to SIZE do
      if i <> j then
        if A[i] = A[j] then
          begin
            WriteLn('A[', i, '] = ', A[i], ' and A[', j, '] = ', A[j], ' is equal');
            Equals := Equals + 1;
          end;
  if Equals = 0 then
    WriteLn('Equal elements not found');
end;

begin
  EnterArray;
  SummArray;
  ResultArray;
  ReadLn;
end.


Но вообще имхо кажется мне что переменные типа boolean изучали вы smile 
PM   Вверх
mr.Anderson
Дата 16.9.2008, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



xF1x, это обычные логические переменные. Типы в паскале изучали, я надеюсь? Вообще, отвечу за тебя, что да, изучали, потому что нельзя программировать, не зная типов переменных. Значит, логический тип Boolean тоже изучали. В коде у THandle переменная Equals - логическая переменная типа Boolean. True и False - это возможные значения этой переменной, "Истина" и "Ложь" соответственно.

Понятно теперь?

Добавлено через 40 секунд
THandle, блин, опередил... smile


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
xF1x
Дата 16.9.2008, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



Вы не поверите но мы не разу этого не использовали! Equals первый раз слышу! )) мы через счетчик делали
PM MAIL   Вверх
mr.Anderson
Дата 16.9.2008, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



xF1x, да елки ж зеленые, при чем тут Equals. Это ИМЯ переменной, я могу ее хоть Gorshok назвать, ничего не изменится. Логический тип проходили? Значит, ты должен знать, что это такое.

Это сообщение отредактировал(а) mr.Anderson - 16.9.2008, 14:32


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
xF1x
Дата 16.9.2008, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



А вместо Equals  можно i использовать? ппц мне скажут что мы такого не проходили чо я отвечу?
PM MAIL   Вверх
mr.Anderson
Дата 16.9.2008, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 16
Всего: 128



xF1x, ну я ж тебе объяснил все про эту Equals. Переменная, логический тип, может принимать значения True (Истина) и False (Ложь), используется в логических выражениях, в коде у THandle используется для определения, одинаковы элементы или нет. Так и скажешь. Нет, i ты ее назвать не можешь, т.к. такая переменная уже есть, назови как-нить по-другому.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
THandle
Дата 16.9.2008, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



xF1x, а какая разница как называется переменная? Ну вот какая, нц объясни мне? Она пусть хоть SuperPuperVariableName называется. Имя то любое можешь давать... Ну сделай Ravno, если они англиский не любят...
Код


program Project1;

const
  SIZE = 5;

var
  A: array [1..SIZE] of Integer;
  Summ: Integer;

procedure EnterArray;
var
  i: Integer;
begin
  for i := 1 to SIZE do
    begin
      Write('Enter ', i, ' array element: ');
      ReadLn(A[i]);
    end;
end;

procedure SummArray;
var
  i: Integer;
begin
  Summ := 0;
  for i := 1 to SIZE do
    Summ := Summ + A[i];
  WriteLn('Summ: ', Summ);
end;

procedure ResultArray;
var
  i, j: Integer;
  Ravno: Integer;
begin
  Ravno := 0;
  for i := 1 to SIZE do
    for j := i to SIZE do
      if i <> j then
        if A[i] = A[j] then
          begin
            WriteLn('A[', i, '] = ', A[i], ' and A[', j, '] = ', A[j], ' is equal');
            Ravno := Ravno + 1;
          end;
  if Ravno = 0 then
    WriteLn('Equal elements not found');
end;

begin
  EnterArray;
  SummArray;
  ResultArray;
  ReadLn;
end.

PM   Вверх
xF1x
Дата 16.9.2008, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 18.3.2008

Репутация: 0
Всего: 0



вопрос а где randomize? нужно 20 элементов случайным числом ввести
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0565 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.