Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Скрипт определяющий знак зодиака по дате рождения 
:(
    Опции темы
slon35
Дата 1.6.2011, 04:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 1.6.2011

Репутация: нет
Всего: нет



Здравствуйте! Можете помочь написать скрипт который будет выводить знак зодиака по введеной дате. JS начал учить совсем недавно, так что я в нем еще нуб)

Желательно надо написать его через switch кейсами.

Я написал так: 
Код

var dm = parseInt(prompt('Введите дату', 19.2));
if (dm<20.1 && dm>=18.2) {
alert('Водолей')
}
else if (dm<19.2 && dm>=20.3) {
alert('Рыбы')
}
else if (dm>=21.3 && dm<19.4) {
alert('Овен')
}
else if (dm>=20.4 && dm<20.5) {
alert('Телец')
}
else if (dm>=21.5 && dm<21.6) {
alert('Близнецы')
}
else if (dm>=21.5 && dm<21.6) {
alert('Рак')
}
else if (dm>=21.5 && dm<21.6) {
alert('Лев')
}
else if (dm>=21.5 && dm<21.6) {
alert('Дева')
}
else if (dm>=21.5 && dm<21.6) {
alert('Весы')
}
else if (dm>=21.5 && dm<21.6) {
alert('Скорпион')
}
else if (dm>=21.5 && dm<21.6) {
alert('Стрелец')
}
else if (dm>=21.5 && dm<21.6) {
alert('Козерог')
}
else {
alert('Не правильная дата')

    

Скрипт запускается, но показывает неверные данные, точнее всегда пишет 'Не правильная дата'. Пробывал писать через switch кейсами, но там вобще бред получился...

Вот само условие:

Даны два целых числа: D (день) и M (месяц), определяющие правильную дату.
Вывести знак Зодиака и гороскоп, соответствующий этой дате:

«Водолей» (20.1–18.2),
«Рыбы» (19.2–20.3),
«Овен» (21.3–19.4),
«Телец» (20.4–20.5),
«Близнецы» (21.5–21.6),
«Рак» (22.6–22.7),
«Лев» (23.7–22.8),
«Дева» (23.8–22.9),
«Весы» (23.9–22.10),
«Скорпион» (23.10–22.11),
«Стрелец» (23.11–21.12),
«Козерог» (22.12–19.1).     

Зараннее спасибо.

    

Это сообщение отредактировал(а) slon35 - 1.6.2011, 04:12
PM MAIL   Вверх
aleksandy
Дата 1.6.2011, 05:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 260
Регистрация: 17.12.2006

Репутация: нет
Всего: 5



1. java != javascript
2. твоя проблема в parseInt
PM   Вверх
slon35
Дата 1.6.2011, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 1.6.2011

Репутация: нет
Всего: нет



Цитата(aleksandy @ 1.6.2011,  05:06)
1. java != javascript
2. твоя проблема в parseInt

parseInt убрал, но проблема осталась. Вобще не понимаю причем он? Ведь parseInt выводит зараннее значение в поле ввода.
PM MAIL   Вверх
bars80080
Дата 1.6.2011, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



parseInt ничего не выводит, он преобразует введённое число к int формату. если ты вводишь 19.2 или 19.9, то после parseInt получишь 19

и ещё, не расскажешь, какое число может удовлетворять такому условию:
Цитата(slon35 @  1.6.2011,  04:09 Найти цитируемый пост)
else if (dm<19.2 && dm>=20.3) {


PM MAIL WWW   Вверх
iff
Дата 1.6.2011, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Администратор
**


Профиль
Группа: Участник
Сообщений: 949
Регистрация: 23.3.2007

Репутация: 2
Всего: 16



if (dm<20.1 && dm>=18.2) { это написано во второй строке. dm сравнивается с числом 20 целых 1 десятая, а не с датой.
var dm = parseInt(prompt('Введите дату', 19.2)); это в первой строке. Вы знаете как работает prompt? Этой функции надо передать одно или два значения: первое - заголовок, воторе (может отсутствовать) - значение по умолчанию. parseInt округлит введённое число (одно) до целых.
http://www.w3schools.com/jsref/met_win_prompt.asp
Для работы с датой можно применить объект класса Date. Подробнее здесь:
http://lit.jinr.ru/LCTA/Java/javascript/chapt6.htm


--------------------
DOS... Синей пеленой экран заполнил чистый DOS 
Мышь... Стала вдруг квадратной, потеряла форму мышь... 
Я разбил окно, девяностопятое мастдайное окно, 
И поставил DOS, и тогда увидел: Это счастье, — вот оно.  
PM MAIL WWW   Вверх
CruorVult
Дата 2.6.2011, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 3
Всего: 28



Цитата(slon35 @  1.6.2011,  04:09 Найти цитируемый пост)
if (dm<20.1 && dm>=18.2) {alert('Водолей')}else if (dm<19.2 && dm>=20.3) {alert('Рыбы')}else if (dm>=21.3 && dm<19.4) {alert('Овен')}else if (dm>=20.4 && dm<20.5) {alert('Телец')}else if (dm>=21.5 && dm<21.6) {alert('Близнецы')}else if (dm>=21.5 && dm<21.6) {alert('Рак')}else if (dm>=21.5 && dm<21.6) {alert('Лев')}else if (dm>=21.5 && dm<21.6) {alert('Дева')}else if (dm>=21.5 && dm<21.6) {alert('Весы')}else if (dm>=21.5 && dm<21.6) {alert('Скорпион')}else if (dm>=21.5 && dm<21.6) {alert('Стрелец')}else if (dm>=21.5 && dm<21.6) {alert('Козерог')}else {alert('Не правильная дата')} 


не лень было писать не зная точно будет оно работать или нет?  smile 
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0686 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.