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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2011, 15:23   #1
Frozen inside
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 12
Злость Shell

Как найти максимальное число, кратное 5????
1. Напишите программу, которая выводит на экран числа от 1 до случайного числа в диапазоне [100,200]. При этом вместо чисел, кратных трем, программа должна выводить слово «Fizz», а вместо чисел, кратных пяти — слово «Buzz». Если число кратно и 3, и 5, то программа должна выводить слово «FizzBuzz». Язык программирования — Unix Shell.

2. Проанализировав вывод задачи 1 установите:
- ...
- ...
- максимальное число, кратное 5

P.S: язык программирования Shell обязателен!!!

Последний раз редактировалось Frozen inside; 14.04.2011 в 16:06.
Frozen inside вне форума Ответить с цитированием
Старый 14.04.2011, 15:30   #2
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Да просто игнорировать символьные значения, исключая их из участия в расчетах)

А шелл-то причем ?)
mss вне форума Ответить с цитированием
Старый 14.04.2011, 15:46   #3
Frozen inside
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 12
По умолчанию

))) дык при том, что надо мне это сделать именно на чертовом Shell.
Если игнорировать символьные значения, то задача будет решена не верно. У меня по условию задачи (по которой решается данная задача), уже все числа, кратные 5 заменены на Fizz.

Как я понимаю, нужно искать по номеру строки. Но что-то не очень у меня это получается
Frozen inside вне форума Ответить с цитированием
Старый 14.04.2011, 15:50   #4
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

для делфи самое простое это:
1. грузим файл в стринглист
2. циклом пробегаемся по строчкам вставляя их в ф-ию StrToInt() которую
помещаем в блок try except, там же и производим все действия и всё.
Код:
var sl:tstringlist;

sl:=tstringlist.create;
sl.loadfromfile('adad');
for i:=0 to sl.count-1 do
 begin
  try
   a:=strToInt(sl[i]);
   if a mod 5 =  0 then //кратное 
   else //некратное
  except
  end;
 end;
sl.free;

Последний раз редактировалось SERG1980; 14.04.2011 в 15:54.
SERG1980 вне форума Ответить с цитированием
Старый 14.04.2011, 15:53   #5
Frozen inside
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от SERG1980 Посмотреть сообщение
для делфи самое простое это:
1. грузим файл в стринглист
2. циклом пробегаемся по строчкам вставляя их в ф-ию StrToInt() которую
помещаем в блок try except, там же и производим все действия и всё.
да я и не парилась, если б на Delphi требовалось бы решить
Frozen inside вне форума Ответить с цитированием
Старый 14.04.2011, 15:56   #6
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Цитата:
уже все числа, кратные 5 заменены на Fizz
Это как же сильно нужно хромать на голову, называя символьную последовательность "Fizz" числом и пытаясь найти среди таких вот "Fizz" число, да еще и максимальное ?)
mss вне форума Ответить с цитированием
Старый 14.04.2011, 15:58   #7
Frozen inside
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от mss Посмотреть сообщение
Это как же сильно нужно хромать на голову, называя символьную последовательность "Fizz" числом и пытаясь найти среди таких вот "Fizz" число, да еще и максимальное ?)
дык просто данная задача решается по предыдущей )))))) малость не то понаписала
Frozen inside вне форума Ответить с цитированием
Старый 14.04.2011, 16:03   #8
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Цитата:
малость не то понаписала
А давай ты уже "малость то" напишешь и потом приходи ?)
Желательно в оригинале от препода, т.е. без отсебячины)
mss вне форума Ответить с цитированием
Старый 14.04.2011, 16:05   #9
Frozen inside
Пользователь
 
Регистрация: 13.04.2009
Сообщений: 12
По умолчанию

Цитата:
Сообщение от mss Посмотреть сообщение
А давай ты уже "малость то" напишешь и потом приходи ?)
Желательно в оригинале от препода, т.е. без отсебячины)
тогда пишу обе задачи, ибо не получится иначе.
1. Напишите программу, которая выводит на экран числа от 1 до случайного числа в диапазоне [100,200]. При этом вместо чисел, кратных трем, программа должна выводить слово «Fizz», а вместо чисел, кратных пяти — слово «Buzz». Если число кратно и 3, и 5, то программа должна выводить слово «FizzBuzz». Язык программирования — Unix Shell.

2. Проанализировав вывод задачи 1 установите:
- количество четных чисел
- количество чисел, кратных 3 и/или 5
- максимальное число, кратное 5
Frozen inside вне форума Ответить с цитированием
Старый 14.04.2011, 16:15   #10
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Ну вот это совсем другой коленкор !)
Бежишь по строкам файла и ищешь строки Buzz и FizzBuzz.
При обнаружении очередной Buzz или FizzBuzz фиксируешь в переменной номер строки, где встрелилась Buzz или FizzBuzz - значение этой переменной после завершения чтения файла и будет максимальным числом, кратным 5-ти)
mss вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Shell на C(Конвейер) l1pton17 Общие вопросы C/C++ 0 01.11.2010 22:01
Shell Svetochka1991 Помощь студентам 1 31.03.2010 21:26
Windows shell firmwares Общие вопросы Delphi 3 15.01.2010 03:53
UNIX SHELL Claster Операционные системы общие вопросы 1 27.10.2009 22:52
Shell odi_noki О форуме и сайтах клуба 10 02.11.2008 12:50