![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
масивчик (
G-leb © (2012-11-16 21:05:00)Задали массив чисел A (n) , n ≤ 500. Разработать программу, которая вычисляет сумму всех чисел, которые повторяются, и произведение всех чисел, которые не повторяются
///Задайте значение действительным величинам произвольным образом в диапазоне от 0 до 100///
uses
SysUtils;
const n = 500;
type mas = array[1..n] of integer;
var a: mas; i: byte;
begin writeln('vvod:');
for i:=1 to n do readln(a[i]);
writeln('vuvod:');
for i:=1 to n do write(a[i]:n);
readln;
end.
вот масив .. как дописать чтоб находило похожие и добавляло ... а не походие умножало ?
Сергей М. (2012-11-16 23:27:00) [41]
> G-leb (16.11.12 23:21) [14]
Подсказка : сначала отсортируй массив (по возрастанию или убыванию - не важно) любым известным тебе алгоритмом сортировки.
G-leb (2012-11-16 23:27:00) [42]первые 2 лабы сам написал почти .. немного в нете подсказывали ... но там легко иф елсе одни ввод вывод переменных кнопка батон и текстовые поля ... а тут цыкл и масив появился .. и я еще не совсем понимаю как с ними работать .. теорию вроде прочитал .. а куда-то в сторону пофантазировать иже проблематично
G-leb (2012-11-16 23:21:00) [43]первый курс - 3 лабораторная по программированию .. до етого никогда не сталкивался с программирование )) .. ну может чуть чуть
Сергей М. (2012-11-16 22:50:00) [44]
> так не запускается с real
Так ты разберись почему"не запускается" - в сообщение об ошибке вникни ..
Или препод с тобой "разберется", если ты не разберешься)
Ну есть, конечно, и "запасной вариант" - купитьу кого-нибудь готовое решение и попытаться впарить его преподу как своё).. Но тут есть немалый риск что "аппаратура при нем"))
Rouse_ (2012-11-16 22:49:00) [45]В вузах учат, это явно не вуз...
Jeer (2012-11-16 22:47:00) [46]
> Где учишся, что за ПТУ такой?
Скорее всего ВУЗ, заявленный под сокращение. :(
Да и правильно.
P.S.
Иди в ремесленники, работай руками - это более понятно и востребовано.
Rouse_ (2012-11-16 22:44:00) [47]
> uses
> crt; тож ошибку выдает ставлю
> uses
> SysUtils; только тогда работает
Т.е. для тебя что паскалевская программа, что на дельфе, как я понял монопенисюальны? Где учишся, что за ПТУ такой?
G-leb (2012-11-16 22:43:00) [48]так не запускается с real :(
Сергей М. (2012-11-16 22:43:00) [49]
> Вот помогли мне
Тебе "помог" такой же незнайка.
Так сказать медвежью услугу тебе оказал, подсуетившись и выдав неверное решение.
Сергей М. (2012-11-16 22:37:00) [50]
> ставлю real выдает ошибку
Вернешь на место integer - "ошибку" тебе выдаст препод, не засчитав задание выполненным.
Придется тебе выбирать из двух зол меньшее)
G-leb (2012-11-16 22:12:00) [51]Вот помогли мне .... но есть кое что непонятное
program lab5;
{$APPTYPE CONSOLE}
uses
crt;
Var
a : array [1..500] of integer;
n, i, j, k, sum, mul, col: integer;
begin
write('Введите размерность массива:');
readln(n);
mul := 1;// cумма элементов
sum := 0;
// инициализация массива
for i := 1 to n do
begin
randomize;
a[i] := random (100);
end;
// вывод элементов
for i := 1 to n do write(a[i], ' ');
// проход массива. Каждый элемент сравниваем с каждым.
writeln;
k := 1;
for i := 1 to n do
begin
col := 0; // переменная для подсчёта количества совпадений.
for j := 1 to n do
begin
// если встретился такой же элемент
if (a[i] = a[j]) then
begin
inc(col);// увеличиваем счётчик совпадений на 1
end;
end;
{ если в программе было только одно свпадение чисел(сравнили
число с самим собой) - произведение элнментов }
if (col = 1) then
mul := mul * a[i]
else
// иначе - сумма
sum := (sum + a[i]);
end;
writeln('Cумма = ',sum);
writeln('Произведение = ', mul);
end.
1
> mas = array[1..n] of integer; ставлю real выдает ошибку ...
2. генерирует как-то странно по 10-15 одинаковых чисел
и
uses
crt; тож ошибку выдает ставлю
uses
SysUtils; только тогда работает
AV (2012-11-16 22:10:00) [52]
> Разработать программу, которая вычисляет сумму всех чисел,
> которые повторяются
начать надо с определения таковых.
напиши как найти первое число, которое уже встречалось.
Сергей М. (2012-11-16 21:44:00) [53]
> G-leb (16.11.12 21:05)
Тебе ж сказано в задании - "Задайте значение действительнымвеличинам"
А ты что пишешь вместо этого ?
> mas = array[1..n] of integer;
За два дня можно было бы вполне разобраться хотя бы с этим весьма важнымдля поиска и выбора решения моментом.
Rouse_ (2012-11-16 21:16:00) [54]Ну ты код то свой покажи чего наваял, лучше каждую строчку прокомментируй, так может и сам поймешь ошибку
G-leb (2012-11-16 21:13:00) [55]2 день сижу .. не могу понять ничего ... прочитал уже штук 30 примеров не могу понять как найти ..
Rouse_ (2012-11-16 21:10:00) [56]Глеб, представь что оперирующий тебя врач прибежал на форум с вопросом "с какой стороны аппендицит"?
Я могу понять когда люди провели собственные изыскания и уперлись в непонятный им момент, но вот так чтобы сразу (решите за меня).
Сейчас девять - за два часа, думаю сможешь написать то, что тебе не понятно в алгоритме. Если нет - закрываемся...