1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40

одномерный массив..паскаль авс

18.03.2010, 21:10. Показов 2714. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
училку в универе не устраивает ...она хочет чтоб эти 2 задачи выглядели проще ...помогите !!!

вот еще раз эти задачи В одномерном массиве, состоящем из п вещественных элементов, вычислить:

1. Сумму элементов массива, расположенных после минимального элемента.
2. Упорядочить элементы массива по возрастанию модулей.

на промежутке (-10;10)!!!!

а вот само решение задач:

первая задача у меня выглядит вот так

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
uses crt;
const max=100;
var a:array[1..max] of integer;
n,i,j,imn:byte;
s:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива n=');
readln(n);
until n in [1..max];
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(50);
write(a[i],' ');
end;
writeln;
writeln;
imn:=1;
for i:=1 to n do
if a[i]<a[imn] then imn:=i;
writeln('Минимальный элемент=',a[imn],' его номер=',imn);
writeln;
s:=0;
for i:=imn+1 to n do
s:=s+a[i];
writeln('Сумма элементов после минимального=',s);
readln
end.
вторая задача выглядит вот так

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
uses crt;
const max=100;
var a:array[1..max] of integer;
n,i,j:byte;
x:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива n=');
readln(n);
until n in [1..max];
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(50)-20;
write(a[i],' ');
end;
writeln;
writeln;
for i:=1 to n-1 do
for j:=i+1 to n do
if abs(a[i])>abs(a[j]) then
begin
x:=a[i];
a[i]:=a[j];
a[j]:=x;
end;
writeln('Массив отсортирован по возрастанию модулей:');
for i:=1 to n do
write(a[i],' ');
readln
end.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.03.2010, 21:10
Ответы с готовыми решениями:

Одномерный массив.Паскаль.
Решите пожалуста задачу. Найти среднее геометрическое элементов массива C с четными индексами. заранее спасибо.

паскаль. одномерный массив
Даны А(13) и В(13)значение массивов выбираются самостоятельно. Для нового массива С, элементы которого выбираются по правилу С=...

Одномерный массив(паскаль) срочно
привет всем! вот тут у меня задачка на одномерные массивы, помогите немогу вникнуть! Определить, сколько нулей лежит вне...

12
5 / 5 / 0
Регистрация: 26.02.2010
Сообщений: 18
18.03.2010, 22:42
два замечания по первой:
- j в var лишнее;
- начать просматривать массив, при поиске минимального, можно уже со второго элемента (for i:=2 to n do).

вторая: честно признаюсь, ваша сортировка "методом обмена" работает, но разбираться не стал, для меня привычнее:

Pascal
1
2
3
4
5
6
7
8
for i:=1 to n-1 do
    for j:=1 to n-1 do
        if abs(a[j])>abs(a[j+1]) then
        begin
            x:=a[j];
            a[j]:=a[j+1];
            a[j+1]:=x;
        end;
максимум что можно - убрать проверку на корректность ввода до максимального значения размера массива, в остальном у меня решения такие же.

p.s.: помещайте код в тэги - неудобно смотреть неформатированный текст.
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 22:45  [ТС]
а вы не могли бы в общем виде показать как выглядит по вашему первая задача ..очень прошу
0
5 / 5 / 0
Регистрация: 26.02.2010
Сообщений: 18
18.03.2010, 23:02
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
uses crt;
const max=high(integer); // максимальное значение integer, но можно указать и числом
 
var a:array[1..max] of integer;
n,i,imn: byte; // здесь была не участвующая переменная j
s: integer;
 
begin
 
clrscr;
randomize;
 
write('Размер массива n = ');
readln(n);
 
writeln('Исходный массив:');
for i:=1 to n do
    begin
        a[i]:=random(50);
        write(a[i],' ');
    end;
    
writeln;
writeln;
imn:=1;
for i:=2 to n do // начинаем просматривать со 2-го элемента, т.к. незачем сравнивать первый с первым.
    if a[i]<a[imn] then imn:=i;
    
writeln('Минимальный элемент = ',a[imn]); // убрал "его номер", сокращать уже просто некуда :)
writeln;
 
s:=0;
for i:=imn+1 to n do
    s:=s+a[i];
write('Сумма элементов после минимального = ',s);
readln; // здесь вы забыли точку с запятой
 
end.
посмотрите и удалите комментарии.
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 23:08  [ТС]
да...вы очень умный человечек ..мне бы сейчас разобраться еще и со 2ой задачей как - нибудь..спасибо вам большое

Добавлено через 2 минуты
да и еще при решении программа раскаль выводит "неизвестный идентификатор high"
0
5 / 5 / 0
Регистрация: 26.02.2010
Сообщений: 18
18.03.2010, 23:19
Цитата Сообщение от Tatyana___koten Посмотреть сообщение
да...вы очень умный человечек ..мне бы сейчас разобраться еще и со 2ой задачей как - нибудь..спасибо вам большое
я могу и ошибаться, просто готовлюсь к предстоящему в обозримом будущем экзамену и пока никто из компетентных членов форума не ответил предложил свой вариант.
Цитата Сообщение от Tatyana___koten Посмотреть сообщение
да и еще при решении программа раскаль выводит "неизвестный идентификатор high"
извините, видимо ABC Pascal меня не понял (если вы на нём проверяете), тогда замените вторую строку на
Pascal
1
const max = 100;
я больше так не буду

Ваши задачи правильные, просто я сам не понимаю что не нравится преподавателю и предложил сократить под самый минимум, а во второй задаче с 21-ой по 28-ую строчку предложил немного другой вариант - они оба рабочие.
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 23:26  [ТС]
спасибо вам большое...........вы профессионал в этом деле ..........мяуффффффф хоть поняла что к чему уфффффф

Добавлено через 4 минуты
а можно еще вопрос ... как сделать чтоб при решении этой задачи (ввода чисел с клавиатуры) не выскакиволо окно с n= ..можно сделать проще мм ??
0
 Аватар для Mishka Tedi
1 / 1 / 0
Регистрация: 18.03.2010
Сообщений: 20
18.03.2010, 23:36
Приветик, убери строчки - uses crt; clrscr;

P.S. Удачи, и всё получится милая! )))))))))))))))))))))))
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 23:39  [ТС]
ой ..привети муррр в контакте ты у меня в друзъях....я помню муррррррр да мы там встречались =)))))))))))))) спасибки еще раз
0
5 / 5 / 0
Регистрация: 26.02.2010
Сообщений: 18
18.03.2010, 23:41
Цитата Сообщение от Tatyana___koten Посмотреть сообщение
спасибо вам большое...........вы профессионал в этом деле ..........мяуффффффф хоть поняла что к чему уфффффф
избавьте меня от такой чести) у меня ещё куча нерешенных задач)

Цитата Сообщение от Mishka Tedi Посмотреть сообщение
Приветик, убери строчки - uses crt; clrscr;
уже паранойя, такая же как выброшенный мною цикл repeat...until, но если только постебаться над преподом, то код такой:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
const n=6;
 
var a:array[1..n] of integer;
i,imn: byte;
s: integer;
 
begin
 
randomize;
 
writeln('Исходный массив:');
for i:=1 to n do
    begin
        a[i]:=random(50);
        write(a[i],' ');
    end;
    
writeln;
writeln;
imn:=1;
for i:=2 to n do
    if a[i]<a[imn] then imn:=i;
    
writeln('Минимальный элемент = ',a[imn]);
writeln;
 
s:=0;
for i:=imn+1 to n do
    s:=s+a[i];
write('Сумма элементов после минимального = ',s);
readln;
 
end.
я бы сказал, теперь задача не очень красивая - приятнее самому задавать размер вводом с клавиатуры, а не менять константу (вторая строка).
да, вот ещё: переменная n в разделе var (пятая строка) так же была лишняя, теперь её там нет.

ps: без оффтопов, пожалуйста
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 23:43  [ТС]
как раз преподавателю это и надо уффффффффф наконец то
0
5 / 5 / 0
Регистрация: 26.02.2010
Сообщений: 18
18.03.2010, 23:47
Цитата Сообщение от Tatyana___koten Посмотреть сообщение
на промежутке (-10;10)!!!!
забыл об этом. замените во второй задаче:
Pascal
1
a[i]:=random(50);
на
Pascal
1
a[i]:=random(21)-10;
1
1 / 1 / 0
Регистрация: 15.12.2009
Сообщений: 40
18.03.2010, 23:51  [ТС]
я тебя обожаю.............мурррррррр=)))))))))) )))))))))
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.03.2010, 23:51
Помогаю со студенческими работами здесь

Цикл For в Паскаль АВС
составте программу, которая находит сумму квадратов чисел от 1 до 10.?? Заранее всем огромное спасибо... =)

Комментарии в Паскаль АВС.
Подскажите что за команда //?? например //line (360,330,150,350); Как ей правильно пользоватся?

задача на массивы (паскаль авс)
Составьте программу, которая формирует массив из пятнадцати случайных целых чисел от -20 до 20 и увиличивает в 2 раза числа, кратные 5, а...

Нужно написать программу на Паскаль авс
Заполнить массив х случайными целыми числами из диапазона . Напечатать массив в одну строку, выделить цветом отрицательные числа. Вычислить...

Паскаль!циклы и одномерный массив. На экзамен нужно срочно.!!не могу сдать экзамен
СРОЧНО!ПОМОГИТЕ ПОЖАЛУЙСТА РЕШИТЬ ЗАДАЧУ В ПАСКАЛЕ НА ЦИКЛЫ И ОДНОМЕРНЫЙ МАССИВ.ЭКЗАМЕН НЕ могу СДАТЬ. туТ ВЛОЖЕНИЕ ФОТОГРАФИЯ С ЗАДАНИЕМ....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

Новые блоги и статьи
Batch Transform и Batch Gizmo Drawing API в Unity
GameUnited 20.04.2025
В мире разработки игр и приложений на Unity производительность всегда была критическим фактором успеха. Создатели игр постоянно балансируют между визуальной привлекательностью и плавностью работы. . .
Звук в Unity: Рандомизация с Audio Random Container
GameUnited 20.04.2025
В современных играх звуковое оформление часто становится элементом, который либо полностью погружает игрока в виртуальный мир, либо разрушает атмосферу за считанные минуты. Представьте: вы исследуете. . .
Максимальная производительность C#: Советы, тестирование и заключение
stackOverflow 20.04.2025
Погружение в мир микрооптимизаций C# открывает перед разработчиком целый арсенал мощных техник. Но как определить, где и когда их применять? Ответ начинается с точных измерений и профилирования. . . .
Максимальная производительность C#: Предсказание ветвлений
stackOverflow 20.04.2025
Третий ключевой аспект низкоуровневой оптимизации — предсказание ветвлений. Эта тема менее известна среди разработчиков, но её влияние на производительность может быть колоссальным. Чтобы понять. . .
Максимальная производительность C#: Векторизация (SIMD)
stackOverflow 20.04.2025
Помимо работы с кэшем, другим ключевым аспектом низкоуровневой оптимизации является векторизация вычислений. SIMD (Single Instruction, Multiple Data) позволяет обрабатывать несколько элементов данных. . .
Максимальная производительность C#: Процессорный кэш
stackOverflow 20.04.2025
Знакомство с внутренним устройством процессорного кэша — ключевой шаг в написании по-настоящему быстрого кода на C#. Этот слой архитектуры компьютера часто ускользает от внимания разработчиков, но. . .
Максимальная производительность C#: Введение в микрооптимизации
stackOverflow 20.04.2025
В мире разработки на C# многие привыкли полагаться на . NET Runtime, который "магическим образом" сам оптимизирует код. И часто это работает - современные JIT-компиляторы творят чудеса. Но когда речь. . .
MVC фреймворк в PHP
Jason-Webb 19.04.2025
Архитектурный паттерн Model-View-Controller (MVC) – это не просто модный термин из мира веб-разработки. Для PHP-программистов это фундаментальный подход к организации кода, который радикально меняет. . .
Dictionary Comprehensions в Python
py-thonny 19.04.2025
Python славится своей выразительностью и лаконичностью, что позволяет писать чистый и понятный код. Среди множества синтаксических конструкций языка особое место занимают словарные включения. . .
Шаблоны и протоколы для создания устойчивых микросервисов
ArchitectMsa 19.04.2025
Микросервисы — архитектурный подход, разбивающий сложные приложения на небольшие, независимые компоненты. Вместо монолитного гиганта, система превращается в созвездие небольших взаимодействующих. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru