Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 20.03.2011, 14:34
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
Вопрос Помогите новичку решить задачку...

Пусть m-целое от 1 до 365. Присвоить целой переменной n значение 1, 2, …, 7 в зависимости от того, на какой день недели (понедельник, …, воскресенье) приходится m-ый день не високосного года, в котором день недели 1 января вводится с клавиатуры (например, понедельник –1, вторник –2 и т.д.).
Ответить с цитированием
  #2  
Старый 20.03.2011, 16:16
Аватар для eXplorer
eXplorer eXplorer вне форума
Активный
 
Регистрация: 06.08.2010
Адрес: Ярославль
Сообщения: 264
Версия Delphi: 7
Репутация: 14
По умолчанию

попробуй так
Код:
var
i:integer;
i2:integer;
begin
i2:=strtoint(edit1.Text);
for i:=1 to strtoint(edit2.Text)-1 do begin
i2:=i2+1;
if i2=8 then i2:=1;
end;
ShowMessage(inttostr(i2));
end;

где:
//edit1.text - день недели в виде от 1 до 7 (на число первого января)
//edit2.text - нужный день в году
__________________
Ответить с цитированием
  #3  
Старый 20.03.2011, 16:38
Аватар для Konrad
Konrad Konrad вне форума
Эксперт
 
Регистрация: 19.03.2009
Сообщения: 1,261
Репутация: 45834
По умолчанию

Зачем цикл?

А mod теперь запрещено использовать?
Ответить с цитированием
  #4  
Старый 20.03.2011, 16:47
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
По умолчанию

eXplorer, спасибо большое))
Ответить с цитированием
  #5  
Старый 20.03.2011, 16:53
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
По умолчанию

я решил ее вот так:
Код:
var m,n,i,z:integer;

begin
    writeln('vvedite nyjniy den v godu');
    readln(m);
    if (m>1) and (m<365) then
          begin
          writeln('vvedite den nedeli 1 yanvarya');
          readln(i);
          z:=i-1;
          n:=(m+z) mod 7;
          if (n=0) then n:=7;
          writeln(n);
          end
    else writeln('ne ydovletv');
    readln;
end.
это есть правильно?

Последний раз редактировалось Row, 20.03.2011 в 17:00.
Ответить с цитированием
  #6  
Старый 20.03.2011, 16:59
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
По умолчанию

просто в циклах я еще не очень...)
Ответить с цитированием
  #7  
Старый 20.03.2011, 17:02
Аватар для eXplorer
eXplorer eXplorer вне форума
Активный
 
Регистрация: 06.08.2010
Адрес: Ярославль
Сообщения: 264
Версия Delphi: 7
Репутация: 14
По умолчанию


а я так... без цикла если

Код:
var
   i:integer;
   i2:integer;
begin
   i:=strtoint(edit1.text);
   i2:=i+((strtoint(edit2.text) mod 7)-1);
   if i2>7 then 
       i2:=abs(i-(strtoint(edit2.text) mod 7)-1);
   ShowMessage(inttostr(i2));
end;
__________________
Ответить с цитированием
  #8  
Старый 20.03.2011, 17:07
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
По умолчанию

мне твой код нравится больше, но я немного не догоняю, как он работает о_О
печально быть новичком))
Ответить с цитированием
  #9  
Старый 20.03.2011, 17:16
Аватар для eXplorer
eXplorer eXplorer вне форума
Активный
 
Регистрация: 06.08.2010
Адрес: Ярославль
Сообщения: 264
Версия Delphi: 7
Репутация: 14
По умолчанию

да я сам всё усложняю чо-то постоянно так...
а твой код рабочий и проще чем мой
__________________
Ответить с цитированием
  #10  
Старый 20.03.2011, 20:51
Row Row вне форума
Прохожий
 
Регистрация: 20.03.2011
Сообщения: 21
Репутация: 10
По умолчанию

я просто в универе на первом курсе учусь, циклы еще не прошли и пока без них решать нужно
кстати ты в Delphi 7 код пишешь?
просто мы на 6 работаем, они сильно отличаются?
Ответить с цитированием
  #11  
Старый 20.03.2011, 21:04
Аватар для eXplorer
eXplorer eXplorer вне форума
Активный
 
Регистрация: 06.08.2010
Адрес: Ярославль
Сообщения: 264
Версия Delphi: 7
Репутация: 14
По умолчанию

Цитата:
Сообщение от Row
я просто в универе на первом курсе учусь, циклы еще не прошли и пока без них решать нужно
кстати ты в Delphi 7 код пишешь?
просто мы на 6 работаем, они сильно отличаются?

на 7.. отличаются или нет сам незнаю
уже отходим от темы.. ты пиши в личку... или лучше в контакт http://vkontakte.ru/explorerr или в асю UIN-624947740
__________________
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:18.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025