IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> Две задачки
Dushka
сообщение 21.06.2010 11:43
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Учитель по информатике сказал что задачки простые, но для меня они темный лес. Может сможете мне помочь. Заранее благодарна .
1. Найти количество цифр кратных старшей цифре числа
2. В массиве 7*7 расставить строки в порядке возрастания количество четных чисел в их
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Unconnected
сообщение 21.06.2010 11:56
Сообщение #2


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


Первая:

var i,n,res:integer;

begin
writeln('Vvedite chislo');
readln(n);res:=0;
while (n>9) do n:=n div 10;
for i:=1 to 9 do if (i mod n=0) then inc(res);
writeln(res);
readln;
end.





--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 21.06.2010 12:08
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Спасибо большое тебе Unconnected, осталась еще одна и я спасенаsmile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 21.06.2010 12:08
Сообщение #4


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
Учитель по информатике сказал что задачки простые, но для меня они темный лес. Может сможете мне помочь. Заранее благодарна .

Принципиально - не БУДУ. Ровно до тех пор, пока не исправите ошибки. Касающиеся не программирования "что Вы!?". А чиста русккаго языку.
Надеюсь, Вы Свой язык уважаете? norespect.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 21.06.2010 12:15
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Запятые, перед "что" и перед "сможете". wub.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Unconnected
сообщение 21.06.2010 12:16
Сообщение #6


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


№2:
const m=7;
var mas:array [1..m,1..m] of byte;
i,j:byte;

function getodd(st:byte):byte;
var i:byte;
begin
result:=0;
for i:=1 to m do if not(odd(mas[st,i])) then inc(result);
end;

Procedure swap(p1,p2:byte);
var i,buf:byte;
begin
for i:=1 to m do begin
buf:=mas[p1,i];
mas[p1,i]:=mas[p2,i];
mas[p2,i]:=buf;
end;
end;

Procedure output;
var i,j:byte;
begin
for i:=1 to m do begin
for j:=1 to m do write(mas[i,j],' ');
writeln;
end;
writeln;
end;

begin
randomize;
for i:=1 to m do for j:=1 to m do mas[i,j]:=random(50);
output;
for i:=1 to m-1 do
for j:=m-1 downto i do if getodd(j)>getodd(j+1) then swap(j,j+1);
output;
end.


Ozzя
, да вроде не так всё запущено, бывает и хуже smile.gif Я, кстати, рад, что хоть кому-то в школе задачки дают..)


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 21.06.2010 12:18
Сообщение #7


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
Запятые, перед "что" и перед "сможете".

Молодец. Еще тире после "они".
Жду Вашего варианта решения проблемы.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 21.06.2010 12:19
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


ААААААааааааааааааааааааа, расцеловала бы, большое спасибо за помощь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 21.06.2010 12:20
Сообщение #9


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
Ozzя, да вроде не так всё запущено, бывает и хуже

Знаю. sad.gif

Dushka
Добрый дедушка Unconnected таки Вам помог. Не забудьте оному + поставить в рейтинг. ;)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 21.06.2010 12:29
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Не могу поставить, не нажимается. Почему?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 21.06.2010 12:36
Сообщение #11


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата
Не могу поставить, не нажимается. Почему?

Постов - маловато будет. Я поставлю за Вас, ежели не возражаете.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 21.06.2010 12:37
Сообщение #12


Гость






Спасибо и вамsmile.gif Возражении не имею!
 К началу страницы 
+ Ответить 
Dushka
сообщение 12.06.2011 14:50
Сообщение #13


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Я снова вернулась smile.gif , попросили обосновать задачки, а я ни бе ни ме ни кукареку mega_chok.gif , не могли бы вы еще пояснить алгоритм этих задачек, как-нибудь доступным языком все объяснить? wub.gif

Сообщение отредактировано: Dushka - 12.06.2011 14:50
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Krjuger
сообщение 12.06.2011 18:55
Сообщение #14


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Хех еще 9 дней и был бы ровно год с того момента как вам ответили.Вы более конкретно скажите что не можете описать словами?уж вывод на экран вы должны понимать как производиться в процедуре output.Если в кратце,то функция getodd считает количество НЕчетных чисел в строке и выводит в качестве результата.Функция swap меняет местами 2 строки.
А дальше остновная программа.В цикле проверяем,если количество нечетных в текущей строке больше чем в следующей,то меняем местами.

Сообщение отредактировано: Krjuger - 12.06.2011 19:03
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 14.06.2011 8:09
Сообщение #15


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Саму суть задач мне бы разжевать unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Krjuger
сообщение 14.06.2011 10:30
Сообщение #16


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Ну смотри у тебя есть массив 7х7 в нем в произвольном порядке записаны числа ты смотриш сколько у тебя в каждой строке четный чисел.Например в первой строке 1, во второй 4, в третьей 2, и тд.Ну и потом надо переставить строки так,чтобы вот эти самые числа были в порядке возрастания,тобиш в каждой следующей строке было как минимум не меньше,чем в предыдущей,тобиш первая строка останется на месте, а вторая и третья поменяются местами.Для примера,который я привел.

Сообщение отредактировано: Krjuger - 14.06.2011 10:32
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Dushka
сообщение 15.06.2011 15:18
Сообщение #17


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Женский

Репутация: -  0  +


Так, во вторую задачу вроде как вклинилась, а можно еще первую? smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
IUnknown
сообщение 15.06.2011 17:19
Сообщение #18


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


Ну, первую, для начала, надо правильно решить, прежде чем объяснять... Ибо то, что сейчас в посте №2 - оно, конечно, решает какую-то задачу, только не заданную в условии. Не верю я, что требовалось найти, сколько всего есть цифр, кратных старшей цифре числа. Наверняка задание стояло так: найти количество цифр числа, кратных его старшей цифре... Скажем, в 47854 их будет 3, а в 7889 - одна, если саму старшую цифру считать. Кстати, вот еще подвох: а считать ли?

Возможно, если бы это задание было решено верно - то продолжения бы не последовало...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Unconnected
сообщение 15.06.2011 18:52
Сообщение #19


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


Ну, если задание и правда такое, то вот, лучше поздно)

var oldest,c:char;
oldestv,r:byte;
begin
r:=1;
read(oldest);
oldestv:=ord(oldest)-ord('0');
repeat
read©;
if ((ord©-ord('0')) mod oldestv=0) then inc®; //добавить в условие "and (c<>#13)"
until (c=#13);
writeln®;
readln;readln;//второй нужен, потому что при выходе из цикла первый сразу срабатывает..
end.


Сообщение отредактировано: Unconnected - 15.06.2011 19:15


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
IUnknown
сообщение 15.06.2011 19:09
Сообщение #20


a.k.a. volvo877
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской

Репутация: -  627  +


Это неправильное решение. Введи 5735, и удивись, а с чего бы это 5-ка встречается 3 раза? smile.gif Открою тайну: Ord(#13) - Ord('0') = -35, хотим остаток от деления на 5 - получаем что? Ага, он самый, 0...

А насчет двух ReadLn подряд - ну сколько же можно говорить? После цикла прочитай из буфера #10 еще одним Read-ом, и не надо будет магические несколько ReadLn-ов добавлять для ожидания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

2 страниц V  1 2 >
 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 27.04.2024 16:54
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"