Автор |
Сообщение |
CTPEJIOK ... |
|
Задача 1.
В тридевятом царстве злой Дракон похитил принцессу и заточил ее в замки. Иван- Царевич решил спасти ее. Чтобы добраться до принцессы, Ивану надо пройти десять комнат. В некоторых комнатах двери закрыты. Открыть их можно только с помощь. волшеб ключа, котрый харнит баба яга.
Баба яга согласилась дать ключ только при условии - если он прав. угадает, сколько дверей закрыто в замке. Она называет одно число.
Закрытх дверей в замке ровно столько, сколько единиц в двоич записи этого чисал.
Входные данные
N(1<N<1000)
Выходные данные.
вести одно число - колич единиц в двоич записи числа N |
|
|
|
|
Mvd Эксперт |
|
Цитата: |
program test;
var
i,a,zero:integer;
begin
readln(a);
for i:=1 to 10 do
begin
if (a and 1=1) then inc(zero);
a:=a shr 1;
end;
writeln(zero);
readln;
end. |
|
|
|
|
|
CTPEJIOK ... |
|
Mvd
Спасибо. Поможешь еще парочку? |
|
|
|
|
Mvd Эксперт |
|
CTPEJIOK
Давай. Я как раз Pascal вспоминаю |
|
|
|
|
CTPEJIOK ... |
|
Mvd
о. ща напишу))
а лучше объясни.) |
|
|
|
|
Wega Гуру |
|
Mvd
Ты запускал свой код? У меня есть сомнение, что он работает. Хотя я в Паскале чуть более чем ноль.
ЗЫ. Пойду найду компилятор. |
|
|
|
|
Mvd Эксперт |
|
Wega
Конечно запускал |
|
|
|
|
dipp Эксперт |
|
А я вот ток не понял, зачем в условии проверяется равенство 1=1? |
|
|
|
|
Wega Гуру |
|
dipp
Иначе не работает. Но почему a and 1=1 возвращает истину, когда а нечётное я понять не могу. |
|
|
|
|
Mvd Эксперт |
|
dipp
Проверяем равен ли младший разряд 1. |
|
|
|
|
CTPEJIOK ... |
|
В трех карбоках лежат карандаши. Учитель попросил Петю переложить часть карандашей так, чтобы в коробках стало поровну. Помогите Пете выполнить задание и напшите программу, которая будет определять какое наименьшее кол-во карандашей требуется переложить.
Вход данные
три натур числа не превосх 100
Выход данные
одно число - наеимешь кол - во карандашей кот над о перлож Если не возмонж вести слово IMPOSSIBLE |
|
|
|
|
Wega Гуру |
|
Mvd
Я сюда отвечу, раз уж не одного меня это волнует .
Mvd писал(а): |
Это же побитовая операция И 1, а значит с младшим разрядом. 1 и 1 даёт 1, а 1 и 0 даёт 0. |
Было подозрение, что битовая, но проверил в гугле - логическая! Это и смутило.
http://web.mit.edu/sunsoft_v5.1/www/pascal/lang_ref/ref_assign.doc.html
Вот тут AND - логическое И, & - битовое. Это не тот Паскаль? |
|
|
|
|
CTPEJIOK ... |
|
Набирая текст на клаве комп. Петя заметил что нект клавиши испов чаще, чем дургие. напишете программу которая помогала Пете определить какую клавиши нажимают чаще всего.
Вход данные
Во вход файле содержится строка символов кот состоит из строчных лат букв и имеет не нулевую длину, не прев 100
Выход данные
В выход файле выдети символы, кот придется нажимать чаще всего, и через пробел, целое число - кол-во нажатий клавиши с символом . Символ тока один. |
|
|
|
|
Mvd Эксперт |
|
Wega
Цитата: |
В языках Pascal/Delphi оба вида конъюнкции обозачается с использованием ключевого слова "and", а результат действия определяется типом операндов. Если операнды имеют логический тип (например, Boolean) - выполняется логическая операция, если целочисленный (например, Byte) - поразрядная |
|
|
|
|
|
Wega Гуру |
|
Mvd
Теперь ясно |
|
|
|
|
Mvd Эксперт |
|
CTPEJIOK писал(а): |
В выход файле выдети символы, кот придется нажимать чаще всего, и через пробел, целое число - кол-во нажатий клавиши с символом . Символ тока один. |
В смысле вывести только один символ который нажат максимальное количество раз или вывести все символы в отсортированном порядке? |
|
|
|
|
Wirs Начинающий |
|
Wega
помоги плиииз...сидим тут и не получается... |
|
|
|
|
CTPEJIOK ... |
|
У нас есть пример
вход выход
ababac a 3 |
|
|
|
|
Mvd Эксперт |
|
CTPEJIOK
Цитата: |
program test3;
var
i,a,max:integer;
S:string;
abc: array [1..26] of integer;
txt:text;
begin
Assign(txt,'in.txt');
Reset(txt);
Readln(txt,S);
Close(txt);
for i:=1 to 100 do
for a:=1 to 26 do
if (S[i]=char(a+96)) then inc(abc[a]);
max:=1;
for i:=1 to 26 do
if (abc[i]>abc[max]) then max:=i;
Assign(txt,'out.txt');
Rewrite(txt);
Writeln(char(96+max),' ',abc[max]);
Write(txt,char(96+max),' ',abc[max]);
close(txt);
readln;
end.
|
|
|
|
|
|
Wirs Начинающий |
|
Mvd
а напиши плиз еще решение ворой которая про карандаши...
так глядишь с твоей помощью и на город выйдем)) |
|
|
|
|
|