Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на языке Pascal


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты по данной тематике

Асмик Гаряка
Статус: Академик
Рейтинг: 10293
∙ повысить рейтинг »
Орловский Дмитрий
Статус: Мастер-Эксперт
Рейтинг: 7135
∙ повысить рейтинг »
lamed
Статус: Академик
Рейтинг: 5961
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / Pascal (Паскаль)

Номер выпуска:1232
Дата выхода:04.04.2012, 02:00
Администратор рассылки:Boriss (Академик)
Подписчиков / экспертов:92 / 108
Вопросов / ответов:3 / 9

Консультация # 95660: Уважаемые эксперты! Помогите, пожалуйста, решить три задачи. 1. Дан двумерный массив. Выполнить сдвиг элементов по внешнему квадрату. Например: 1 1 1 1 1 2 4 0 0 0 0 2 4 0 0 0 0 2 4 0 0 0 0 2 4 3 3 3 3 3 Результат: 4 4 4 4 4 1 3 0 0 0 0 1 3 0 0 0 0 1 3 0 0 0 0 1 3 2 2 2 2 2 2. Дан ...


Консультация # 8644: как определить сколько места отведенно под переменную (т.е. её тип)...
Консультация # 163155: Здравствуйте, уважаемые эксперты! помогите мне решить задачу в Паскале: Найдите все трёхзначные числа, равные сумме кубов своих цифр. Учтите, что abc=100a+10b+c. Заранее большое спасибо!...

Консультация # 95660:

Уважаемые эксперты! Помогите, пожалуйста, решить три задачи.
1. Дан двумерный массив. Выполнить сдвиг элементов по внешнему квадрату.
Например: 1 1 1 1 1 2
4 0 0 0 0 2
4 0 0 0 0 2
4 0 0 0 0 2
4 3 3 3 3 3
Результат:
4 4 4 4 4 1
3 0 0 0 0 1
3 0 0 0 0 1
3 0 0 0 0 1
3 2 2 2 2 2

2. Дан двумерный массив. Начиная с первой строки сдвинуть на две вниз, а последние две перенести на место первых двух строк.
3. Дан двумерный массив. Выполнить слудующие преобразования с ним:
А) в каждой строке сменить знак максимального по модулю элемента на противоположный.
Б) последний отрицательный элемент каждого столбца заменить нулём.
В) положительные элементы умножить на первый элемент соответствующей строки, а отрицательные - на последний
Г) Заменить все элементы строки с номером k и столбца с номером l на противоположные по знаку
Д) К элементам столбца с номером k1 прибавить элементы столбца k2
Если это возможно, то в наиболее упрощённом варианте и с пояснениями. Заранее огромное спасибо. Swallow.

Дата отправки: 19.07.2007, 11:42
Вопрос задал: Ласточка
Всего ответов: 3
Страница онлайн-консультации »


Консультирует Gh0stik (Академик):

Здравствуйте, Ласточка!

Вот решение задачи №2.
const n=5; nn=4;
type tip=integer;
var a:array [1..n,1..nn] of tip;
b:array[1..nn] of tip;
i,j,t:integer;
begin
randomize;
for i:=1 to n do
begin
for j:=1 to nn do
begin
a[i,j]:=random(10)-random(10); {блок формирования матрицы случайных чисел, Вы можете его заменить ручным вводом данных}
write(a[i,j]:3); {выводим элементы массива на экран}
end;
writeln;
end;

for t:=1 to 2 do {блок сдвига строк матрицы, число 2 - количество строк на которое нужно сдвинуть строки}
begin
for j:=1 to nn do b[j]:=a[n,j]; {сохраняем элементы последней строки во вспомогательном массиве}
for i:=n downto 2 do
for j:=1 to nn do a[i,j]:=a[i-1,j]; {делаем циклический сдвиг строк начиная с последней}
for j:=1 to nn do a[1,j]:=b[j]; {записываем значение вспомогательного массива в первую строку}
end;

writeln; {выводим полученный результат}
for i:=1 to n do
begin
for j:=1 to nn do write(a[i,j]:3);
writeln;
end;
readln;
end.


Good Luck!!!

Консультировал: Gh0stik (Академик)
Дата отправки: 19.07.2007, 12:22
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Зенченко Константин Николаевич (Модератор):

Здравствуйте, Ласточка!

В приложении 1-я задача.
В задании ошибка куда делись 1 и 3,
и откуда взялись 2 и 4.
Удачи!

Приложение:

Консультировал: Зенченко Константин Николаевич (Модератор)
Дата отправки: 19.07.2007, 13:50
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует dmitriy.ag (Специалист):

Здравствуйте, Ласточка!
Решение задачи 3 в приложении. Действия А - Д сделаны в виде процедур.

Приложение:

Консультировал: dmitriy.ag (Специалист)
Дата отправки: 19.07.2007, 15:16
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 8644:

как определить сколько места отведенно под переменную (т.е. её тип)

Дата отправки: 01.01.2004, 00:01
Вопрос задал: Борец_с_системой
Всего ответов: 4
Страница онлайн-консультации »


Консультирует Boriss (Академик):

Приветствую Вас, Борец_с_системой!
Для этого существует функция SizeOf, но это не ее тип. Word, Integer, Array[1..2] of byte - занимают одинаковое место в памяти

Приложение:

Консультировал: Boriss (Академик)
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует vitya:

Здравствуйте, Борец_с_системой!
sizeof.

Консультировал: vitya
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует sir Henry (Старший модератор):

Доброе время суток, Борец_с_системой!
Тип переменной и сколько под нее места - два разных вопроса :)).
Сколько места можно узнать функцией SizeOf(Переменная).

Консультировал: sir Henry (Старший модератор)
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Ayl:

Здравствуйте, Борец_с_системой!
Тип или размер? Это 2 большие разницы!
Размер - очень просто: sizeof (variable_name) или sizeof (type_name). Возвращает величину переменной или типа в байтах. А вот определить тип переменной - не получится. Да и как ты это себе представляешь?

Консультировал: Ayl
Дата отправки: 01.01.2004, 00:01
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 163155:

Здравствуйте, уважаемые эксперты! помогите мне решить задачу в Паскале: Найдите все трёхзначные числа, равные сумме кубов своих цифр. Учтите, что abc=100a+10b+c. Заранее большое спасибо!

Дата отправки: 24.03.2009, 17:33
Вопрос задал: Yuliya-bakumovva
Всего ответов: 2
Страница онлайн-консультации »


Консультирует Micren (Профессор):

Здравствуйте, Yuliya-bakumovva!
Программа:

Код :
program Pascal_163155;
{ Диапазон поиска }
const
	MIN=100;
	MAX=999;
{ Функция вычичляет сумму кубов цифр числа }
function Sum3(num:Word):Word;
var
	res,t:Word;
begin
	res:=0;
	while num<>0 do begin
		t:=num mod 10;
		res:=res+t*t*t;
		num:=num div 10;
	end;
	Sum3:=res;
end;
var
	i:Word;
begin
	{ Перебираем числа в цикле }
	for i := MIN to MAX do
  	{ Если число равно сумме кубов цифр то печатаем его }
		if i=Sum3(i) then WriteLn(i);
	ReadLn;
end.

Результат работы:
Код :
153
370
371
407

Консультировал: Micren (Профессор)
Дата отправки: 24.03.2009, 17:53
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Бизин Михаил Анатольевич:

Здравствуйте, Юлия-Sonne!
Текст в приложении. Результат будет такой:
153
370
371
407

Приложение:

Консультировал: Бизин Михаил Анатольевич
Дата отправки: 24.03.2009, 20:11
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка  |  восстановить логин/пароль

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!



В избранное