Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.06.2011, 23:21   #1
Dima170792
Пользователь
 
Аватар для Dima170792
 
Регистрация: 04.04.2011
Сообщений: 76
По умолчанию Заданая последовательность состоит из 1 и 0,определить количество Mзначных чисел,делящихся на 21

Уважаемые форумчане .нужна ваша помощь в решении задачи по информатике(язык программирования Delphi7).Задача следующая :Заданная последовательность состоит из 1 и 0,определить количество M-значных чисел содержащихся в данной последовательности ,делящихся на 21.если несложно выложите пожалуйста полный код программы.Заранее благодарен.
Dima170792 вне форума Ответить с цитированием
Старый 25.06.2011, 01:58   #2
Jakethefish
Форумчанин
 
Регистрация: 13.11.2009
Сообщений: 121
По умолчанию

Код:
function find(m:Int, seq:String):Int;
var
counter,number:Int;
begin
counter:= 0;
for Int i:=0 to strlen(seq) - 1 - m
begin
if StrToInt(Copy(seq,i,m)) mod 21 ==0
    counter++;
end;
result:=counter;
end;
Как то так.
Jakethefish вне форума Ответить с цитированием
Старый 25.06.2011, 10:25   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Jakethefish, согласитесь, тяжко всё таки, когда знаешь один язык (например, C), а потом пытаешься написать программу на другом ЯП (Дельфи, например)...

строки в Pascal/Delphi нумеруются от 1 (единицы)
Типа данных Int нет (есть Integer)
Описывать переменные в теле программы не допускается.
Операция сравнения записывается через унарный знак равно.
Операции наращивания ++ нет (вместо можно Inc(Counter) или Counter := Counter + 1
Операция получения длины строки - Length()

но это всё "цветочки"...
Где в условии задачи сказано, что строка из 1 и 0 - это ДЕСЯТИЧНОЕ представление числа?! Я бы с большей вероятностью предположил, что в задаче речь идёт о двоичной записи.. Впрочем, тут условие задачи допускает двухсмысленность (что, кстати, не очень хорошо для учебных задач)...

А в остальном - всё правильно.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.06.2011, 10:36   #4
Jakethefish
Форумчанин
 
Регистрация: 13.11.2009
Сообщений: 121
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Jakethefish, согласитесь, тяжко всё таки, когда знаешь один язык (например, C), а потом пытаешься написать программу на другом ЯП (Дельфи, например)...

строки в Pascal/Delphi нумеруются от 1 (единицы)
Типа данных Int нет (есть Integer)
Описывать переменные в теле программы не допускается.
Операция сравнения записывается через унарный знак равно.
Операции наращивания ++ нет (вместо можно Inc(Counter) или Counter := Counter + 1
Операция получения длины строки - Length()
Да вы правы, начинал с дельфи, перешел на PHP, JAVA , C#.
Кстати по поводу длины строки, нашел стрлен тут: http://delphi.scps.ru/string/str5223.htm .Вероятно автор ресурса не прав . Старался писать как можно точнее, чтобы было меньше ошибок
Я думаю фраза содержащихся в данной последовательности
должна дать понять что если будет 1001, то нужно рассматривать все же 1001, а не 9. Ну по крайней мере я так понял.
Jakethefish вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С\С++ Дана последовательность чисел. Найти количество различных чисел в этой последовательности yuliyayuliya Помощь студентам 1 14.04.2011 06:30
Количество чисел, делящихся на 11 CrazyRabbit Помощь студентам 9 09.08.2009 01:56
Дана последовательность с n целых чисел. Найти количество елементов, кратных ее первому елементу Alex1991 Помощь студентам 3 10.03.2009 09:02
Составить программу, определяющую количество чисел, делящихся без остатка на три phoenixSV Паскаль, Turbo Pascal, PascalABC.NET 2 05.12.2008 15:05
Определить, сколько чисел входит ровно дважды в последовательность а1,а2,...,аm milton Паскаль, Turbo Pascal, PascalABC.NET 4 11.11.2008 18:31