Вопрос № 151635: Здравствуйте эксперты! Помогите решить задачу: Составить программу, проверяющую, является ли матрица А трехдиагональной. Матрицу А нужно вводить с клавиатуры....
Вопрос № 151638: Здравствуйте эксперты! Объясните пожалуйста алгоритм программы....Вопрос № 151647: Здравствуйте, уважаемые Эксперты! Помогите, пожалуйста, в решении следующих задач: 1. Даны целые положительные числа
M и N. Сформировать целочисленную матрицу размера M × N, у которой все элементы I-й строки имеют значение 10∙I (I = 1, …, M)....Вопрос № 151650: Добрый день!Помогите пожалуйста решить задачи на массивы: 1.Задана последовательность X = (x1, x2, …, x10). Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию: Xi>=P, где p - произведение элементов масс...Вопрос № 151654: <b>Здравствуйте люди добрые!!!!</b> Нужен исходник шифрования методом Цезаря, только текст должен считываться из файла, и записываться в него. Шифрация и дешифрация!!!!!!...Вопрос № 151666: Уважаемые эксперты пожадуста помогите решить задачу!!! Задача: как поменять местами наибольший и наименьший элементы в одномерном массива ??? <img src="http://rusfaq.ru/images/Forum/72.gif" border="0"> Пожалуста..... <img src="http://rusfaq.ru/image...Вопрос № 151680: Доброго времени суток,уважаемые эксперты!Помогите пожалуйста с задачей: Задана последовательность X = (x1, x2, …, x10). Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию: Xi<=p, где p - сумма элементов...Вопрос № 151682: Известна информация о сотрудниках некоторого предприятия: -фамилия,инициалы,
-должность, -оклад. Сформируйте таблицу,записав в неё всю известную информацию о каждом сотруднике. Сформировать поле "Подоходный налог", учитывая, что...Вопрос № 151721: Уважаемые эксперты!!! Помогите плз с такой задачей: составить программу для построения графика функции на указанном промежутке: X^2*sin^2(3*x) на промежутке от 0 до 1.6. Помогите пожалуйста!!!...
Вопрос № 151.635
Здравствуйте эксперты! Помогите решить задачу: Составить программу, проверяющую, является ли матрица А трехдиагональной. Матрицу А нужно вводить с клавиатуры.
Отвечает: Verena
Здравствуйте, Петров Иван Сергеевич! Матрица называется трехдиагональной, если все ее элементы, кроме элементов главной и примыкающих к ней диагоналей, равны нулю. Выглядит это примерно так:
Координаты элементов главной диагонали определяются условием равенства номера столбца номеру ряда, т.е i=j. Соседние диагонали можно выразить условиями j=i-1 и j=i+1
для левой и правой диагоналей соответственно. Для того, чтобы проверить условие задачи, достаточно проверить равенство нулю всех элементов, этому условию не удовлетворяющих. Это можно выразить, например, таким условием: if (not ((i=j) or (j=i+1) or (j=i-1))) and (a[i, j]<>0) - этот элемент нарушает условие трёхдиагональности Честно скажу, я не знаю, обязательно ли должны быть ненулевыми элементы на самих диагоналях, поэтому это условие я не пр
оверяю. Если необходимо - достаточно добавить проверку противоположного условия: if ((i=j) or (j=i+1) or (j=i-1)) and (a[i, j]=0) - этот элемент нарушает (возможно) условие трёхдиагональности Для упрощения кода в случае нахождения одного несоответствия программа завершается через halt - чтобы не использовать флаги. Код в приложении. Удачи!
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Практикант)
Ответ отправлен: 24.11.2008, 15:45
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236542 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Шичко Игорь
Здравствуйте, Петров Иван Сергеевич! Примерно так: begin randomize; {Запуск генератора случайных чисел}
for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=random(10); {заполение матрицы случайными числами от 1 до 10} write(a[i,j]:4); {вывод на экран} end; writeln; end;
repeat write('Enter K:'); readln(k); { ввод номера столбца, который нужно удалить,
должен быть в интервале от 1 до m} until (k>0)and(k<=m);
repeat write('Enter P:'); readln(p); { ввод номера строки, которую нужно удалить, должна быть в интервале от 1 до n} until (p>0)and(p<=n);
for i:=1 to n-1 do for j:=1 to m-1 do a[i,j]:=a[i+ord(p<=i),j+ord(k<=j)]; {вычисление новых элементов матрицы} {Функция ord(p<=i) возвращает 0 если условие в скобках не выполняется, т.е. при i<p} {Функция ord(p<=i) возвращает 1 если условие в скобках выполняется, т.е. при p<=i}
for i:=1 to n-1 do begin for j:=1 to m-1 do write(a[i,j]:4); {вывод результата} writeln; end; readln; end.
Ответ отправил: Шичко Игорь (статус: Практикант)
Ответ отправлен: 24.11.2008, 15:26
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236537 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 151.647
Здравствуйте, уважаемые Эксперты! Помогите, пожалуйста, в решении следующих задач: 1. Даны целые положительные числа M и N. Сформировать целочисленную матрицу размера M × N, у которой все элементы I-й строки имеют значение 10∙I (I = 1, …, M). 2. Даны целые положительные числа M, N, число D и набор из N чисел. Сформировать матрицу размера M ґ N, у которой первая строка совпадает с исходным набором чисел, а элементы каждой следующей строки равны соответствующему элементу предыдущей строки, умноженному
на D (в результате каждый столбец матрицы будет содержать элементы геометрической прогрессии). 3. Дана матрица размера M × N и целое число K (1 < K < M). Вывести элементы K-й строки данной матрицы. 4. Дана матрица размера M × N. Вывести ее элементы, расположенные в столбцах с нечетными номерами (1, 3, …). Вывод элементов производить по столбцам, условный оператор не использовать. 5. Дана квадратная матрица A порядка M (M — нечетное число). Начин
ая с элемента A[1,1] и перемещаясь против часовой стрелки, вывести все ее элементы по спирали: первый столбец, последняя строка, последний столбец в обратном порядке, первая строка в обратном порядке, оставшиеся элементы второго столбца и т. д.; последним выводится центральный элемент матрицы.
Отправлен: 24.11.2008, 14:55
Вопрос задала: Solnce1387 (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Шевченко Дмитрий
Здравствуйте, Solnce1387!
В приложении код программ для заданий 1 и 3.
С уважением, Дмитрий.
Приложение:
Ответ отправил: Шевченко Дмитрий (статус: 5-й класс)
Ответ отправлен: 24.11.2008, 22:40
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236597 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Пупорев Юрий Борисович
Здравствуйте, Solnce1387! Решение задач 2 и 4 в приложении.
Приложение:
Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
Ответ отправлен: 25.11.2008, 13:48
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236644 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Solnce1387!
Задача №5 в приложении. Матрица "обходится" по спирали, элементы выводятся в одну строку. Удачи!
Приложение:
--------- Итерация от человека, рекурсия — от Бога (Питер Дойч)
Ответ отправил: Зенченко Константин Николаевич (статус: Профессор) Украина, Киев Тел.: +380979536619 Адрес: Украина г.Киев ---- Ответ отправлен: 28.11.2008, 18:32
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 237004 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 151.650
Добрый день!Помогите пожалуйста решить задачи на массивы: 1.Задана последовательность X = (x1, x2, …, x10). Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию: Xi>=P, где p - произведение элементов массива X, имеющих чётные индексы. Если таковых не окажется, вывести фразу «Искомых элементов нет». Полученный массив напечатать в столбик. X = {2.95, 7.34, -4.2, 0.5, -4.9, 0.22, 0.35, 1, 10.1, 12}. 2.На двумерный: Ai,j=1.473+j*i,если i+j>5 Ai,j=cos(j*i),в
остальных случаях n=3,m=6 Элементы матрицы, имеющие отрицательные значения, сделать равными нулю, подсчитать и напечатать число этих элементов. Буду очень благодарна!
Отправлен: 24.11.2008, 15:04
Вопрос задала: Evela (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Шичко Игорь
Здравствуйте, Evela! Предлагаю следующий вариант решения. Код в приложении.
Приложение:
Ответ отправил: Шичко Игорь (статус: Практикант)
Ответ отправлен: 24.11.2008, 20:37
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236586 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5
Вопрос № 151.654
Здравствуйте люди добрые!!!! Нужен исходник шифрования методом Цезаря, только текст должен считываться из файла, и записываться в него. Шифрация и дешифрация!!!!!!
Шифр Це́заря — один из древнейших шифров. При шифровании каждый символ заменяется другим, отстоящим от него в алфавите на фиксированное число позиций. Шифр Цезаря можно классифицировать как шифр подстановки, при более узкой классификации — шифр простой замены.
Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Естественным развитием шифра Цезаря стал шифр Виженера. С точки зрения современного к
риптоанализа, шифр Цезаря не имеет приемлемой стойкости.
Я приведу Вам пример реализации, рассчитанный на использование алфавита из маленьких латинских букв (т.е. [abcdefghijklmnopqrstuvwxyz]). Алгоритм совершенно очевидный, берём символ, находим его номер в алфавите и заменяем на символ, следующий в алфавите через заданный шаг (шаг вводится при запуске). Алфавит рассматривается как замкнутый, т.е. из конча мы опять идём в начало, а из начала - в конец. Вообще, тут можно было бы воспользоваться
остатком от деления, без заморочек с проверками, но при нумерации с 1 это не очень удобно, поэтому привожу примитивный вариант. Код в приложении. Удачи!
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Практикант)
Ответ отправлен: 25.11.2008, 02:09
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236610 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 151.666
Уважаемые эксперты пожадуста помогите решить задачу!!! Задача: как поменять местами наибольший и наименьший элементы в одномерном массива ??? Пожалуста.....
Отвечает: Максимцов Дмитрий
Здравствуйте, Гриценко Тория Юрьевна! Необходимо объявить новую переменную... Ей присвоить значение минимума, потом минимуму присвоить значение максимума, и в заключение максимуму присвоить значение вот той новой переменной :)...
Надеюсь вам помогуло, если что можно подробней, но нужно только программу видеть ;)...
Ответ отправил: Максимцов Дмитрий (статус: 1-й класс)
Ответ отправлен: 24.11.2008, 17:32
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236554 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Яровой Сергей Владимирович
Здравствуйте, Гриценко Тория Юрьевна! Вот примерный вариант решения задачи. Размерность массива свою подставите var mas: [1..10] array of integer; {задаем массив типа integer из 10 элементов} i, maxi, mini:byte; max,min:integer; begin for i:=1 to 10 do {начинаем забивать массив элементами} begin write ('Введите ',i,' элемент массива); readln(a[i]); end; min:=a[1]; {Обнуляем показатели min и max} max:=a[1]; for i:=1 to 10 do {
В этом цикле находим максимальный и минимальный элементы массива и запоминаем их порядковый номер } begin if a[i]<min then begin min:=a[i]; mini:=i; end; if a[i]>max then max:=a[i]; maxi:=i; end; end; a[mini]:=max; { Переставляем местами максимальный и минимальный элементы} a[maxi]:=min; for i:=1 to 10 do write(a[i]:3); {Выводим массив на экран} end.
#thank 236565 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Miracle
Здравствуйте, Гриценко Тория Юрьевна! В приложении программа. Она работает. Если будет что-то непонятно - пишите, я поясню.
Приложение:
Ответ отправила: Miracle (статус: 1-й класс)
Ответ отправлен: 25.11.2008, 12:51
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236640 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 151.680
Доброго времени суток,уважаемые эксперты!Помогите пожалуйста с задачей: Задана последовательность X = (x1, x2, …, x10). Сформировать из неё одномерный массив Y, состоящий из элементов, удовлетворяющих условию: Xi<=p, где p - сумма элементов массива X, имеющих нечётные индексы. Если таковых не окажется, вывести фразу «Искомых элементов нет». Полученный массив напечатать в строчку. X = {0.34, 99.2, 52.3, 0.5, 1, 2.23, -15.9, 10.2, 0, -3.9}. Заранее спасибо!
Отправлен: 24.11.2008, 18:34
Вопрос задала: Evela (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Шичко Игорь
Здравствуйте, Evela! Предлагаю похожий вариант решения. Код в приложении
Приложение:
Ответ отправил: Шичко Игорь (статус: Практикант)
Ответ отправлен: 24.11.2008, 21:24
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236592 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5
Вопрос № 151.682
Известна информация о сотрудниках некоторого предприятия: -фамилия,инициалы, -должность, -оклад. Сформируйте таблицу,записав в неё всю известную информацию о каждом сотруднике. Сформировать поле "Подоходный налог", учитывая, что он составляет 13% от оклада, и поле "К выплате".Определить количество сотрудников с минимальной зарплатой и количество с максимальной. Отсортировать таблицу по полю "должность".
Отправлен: 24.11.2008, 18:37
Вопрос задал: Денис (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: Пупорев Юрий Борисович
Здравствуйте, Денис! Решение и оформление задачи с комментариями в приложении.
Приложение:
Ответ отправил: Пупорев Юрий Борисович (статус: Специалист)
Ответ отправлен: 25.11.2008, 12:40
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236637 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5 Комментарий оценки: великолепно)
Вопрос № 151.721
Уважаемые эксперты!!! Помогите плз с такой задачей: составить программу для построения графика функции на указанном промежутке: X^2*sin^2(3*x) на промежутке от 0 до 1.6. Помогите пожалуйста!!!
Отвечает: Verena
Здравствуйте, Мудрик Василий Александрович! Предлагаю довольно универсальный вариант решения - в программе можно задать другую функцию и другой диапазон. Нарисовать график произвольной функции можно просто по точкам, что довольно легко делается с помощью функции PutPixel (x, y, цвет), которая закрашивает пиксель с заданным координатами заданным цветом. Проблема возникает только в масштабировании графика относительно экрана. В моём примере область, отведённая под график, может задаваться в коде, а масштабирование
происходит тривиально: коэффициент масштабирования, на который домножается координата точки, вычисляется как ширина (длина) поля, делённая на длину необходимого отрезка (например, для масштабирования отрезка [x1, x2] по оси Х с шириной поля w мы выберем масштаб w/|x1-x2|, а в моём примере для более красивого вывода я беру масштаб вдвое меньший). Для этих же целей нам необходимо выбрать точку начала координат (по х мы определим её как середину задаваемой области, а
по y - как точку по чентру между локальных минимума и максимума функции на данном отрезке), относительно неё мы будем производить вывод точек графика. Остальное, думаю, будет ясно из комментариев. Пример в приложении. PS: Это слегка видоизменённый мой пример из вопроса 128922, описание взято оттуда же.
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Практикант)
Ответ отправлен: 25.11.2008, 00:56
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 236608 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Скажите "спасибо" эксперту, который помог Вам!
Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
на короткий номер 1151 (Россия)
Номер ответа и конкретный текст СМС указан внизу каждого ответа.
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.