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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.12.2011, 22:36   #1
Dima9876543210
 
Регистрация: 26.10.2011
Сообщений: 4
По умолчанию C++ определение гороскопа по дате рождения

Привет!
помогите плиз как написать программу на c++ "определение гороскопа по дате рождения".
напишите какие шибудь мысли как это все можно организовать в программе
Заранее огромное спасибо))
Dima9876543210 вне форума Ответить с цитированием
Старый 07.12.2011, 22:43   #2
viron
Форумчанин
 
Аватар для viron
 
Регистрация: 02.12.2011
Сообщений: 110
По умолчанию

Что-то не совсем понятно.
Может надо определить знак зодиака?
viron вне форума Ответить с цитированием
Старый 08.12.2011, 00:39   #3
Dima9876543210
 
Регистрация: 26.10.2011
Сообщений: 4
По умолчанию

программа должна вычислять по заданным данным знак зодиака и год рождения(напр, год обезьяны, дракона, и тд) и на основе этого выдает общую астрологическую и психологическую характеристику.
Dima9876543210 вне форума Ответить с цитированием
Старый 08.12.2011, 00:56   #4
Ezhuk
Форумчанин
 
Регистрация: 09.10.2010
Сообщений: 217
По умолчанию

А в чем проблема по введенной дате рождения определить знак задика и год по " животному" ?
Код:
if ( m == 1 && d > 21 || m == 2 && d <22 ) {cout<<" Овца "<<endl<<about_ovca<<endl;}
...
if(y %12 == 0 ) cout<<" год золотого морского огурца"<<endl<< abou_ogyrec<<endl;
В таком духе.
P.S инфа с потолка.
Ёж птица гордая, пока не пнешь не полетит.
Ezhuk вне форума Ответить с цитированием
Старый 08.12.2011, 00:58   #5
Heming
Форумчанин
 
Аватар для Heming
 
Регистрация: 06.07.2010
Сообщений: 105
По умолчанию

Можно сделать в делфи, для наглядности: сделаете главную форму, форму с вводом даты рождения, кнопку оброботчик, поле ввода, ну и доп формы на вывод информации, всю инфу вам придется заранее подготовить про каждый знак задиака и год в отдельном документе(word, txt), если по-сурйозному можно подключить еще базу данных если там этих разных годов много и дофига инфы(я просто слабо разбираюсь в псевдонауках). Но насколько я понимаю разные года идут с определенной периодичностью, а знак зодиака тем более, все что вам придется сделать написать пару операторов case, который будут обрабатывать дату которую вы введете. Программа не сложная, приложите каплю усилий и все получится.
P.S. в с++ думаю аналагичная ситуация, просто чуток другой синтаксис
Carpe Diem
Heming вне форума Ответить с цитированием
Старый 08.12.2011, 01:13   #6
Ezhuk
Форумчанин
 
Регистрация: 09.10.2010
Сообщений: 217
По умолчанию

Да какая тут серьезность? Да и база данных для около 30 ( годов там не много) описаний.
А окно ввода сделать каким-нибудь дизайнером, это не займет даже больше 30 минут, даже если пользоваться в первые. Но я думаю тт об этом речи нет.
Ёж птица гордая, пока не пнешь не полетит.
Ezhuk вне форума Ответить с цитированием
Старый 08.12.2011, 15:55   #7
viron
Форумчанин
 
Аватар для viron
 
Регистрация: 02.12.2011
Сообщений: 110
По умолчанию

Код:
#include "stdafx.h"
using namespace std;
#include "windows.h"

void rus(const char *in)
{
	char out[255];
	AnsiToOem(in, out);
	cout << out;
}

int _tmain(int argc, _TCHAR* argv[])
{
	const char *arrZodiak[12] = {"Овен", "Телец", "Близнецы", "Рак", "Лев", "Дева", "Весы", "Скорпион", "Стрелец", "Козерог", "Водолей", "Рыбы"};
	const char *arrZodiakKitay[12] = {"Крыса", "Бык", "Тигр", "Кролик", "Дракон", "Змея", "Лошадь", "Овца", "Обезьяна", "Петух", "Собака", "Свинья"};
	char zodiak[20] = "";
	char zodiakKitay[20] = "";
	int day, month, year;	// дата рождения

	rus("Введите дату рождения (дд мм гггг): ");
	cin >> day >> month >> year;

	// Вычисляем знак зодиака
	if ( (month == 3 && day >= 21) || (month == 4 && day <= 20) )
		strcpy(zodiak, arrZodiak[0]);	// Овен
	else
	if ( (month == 4 && day >= 21) || (month == 5 && day <= 20) )
		strcpy(zodiak, arrZodiak[1]);	// Телец
	else
	if ( (month == 5 && day >= 21) || (month == 6 && day <= 21) )
		strcpy(zodiak, arrZodiak[2]);	// Близнецы
	else
	if ( (month == 6 && day >= 22) || (month == 7 && day <= 22) )
		strcpy(zodiak, arrZodiak[3]);	// Рак
	else
	if ( (month == 7 && day >= 23) || (month == 8 && day <= 23) )
		strcpy(zodiak, arrZodiak[4]);	// Лев
	else
	if ( (month == 8 && day >= 24) || (month == 9 && day <= 23) )
		strcpy(zodiak, arrZodiak[5]);	// Дева
	else
	if ( (month == 9 && day >= 24) || (month == 10 && day <= 22) )
		strcpy(zodiak, arrZodiak[6]);	// Весы
	else
	if ( (month == 10 && day >= 23) || (month == 11 && day <= 22) )
		strcpy(zodiak, arrZodiak[7]);	// Скорпион
	else
	if ( (month == 11 && day >= 23) || (month == 12 && day <= 21) )
		strcpy(zodiak, arrZodiak[8]);	// Стрелец
	else
	if ( (month == 12 && day >= 22) || (month == 1 && day <= 20) )
		strcpy(zodiak, arrZodiak[9]);	// Козерог
	else
	if ( (month == 1 && day >= 21) || (month == 2 && day <= 19) )
		strcpy(zodiak, arrZodiak[10]);	// Водолей
	else
	if ( (month == 2 && day >= 20) || (month == 3 && day <= 20) )
		strcpy(zodiak, arrZodiak[11]);	// Рыбы


	// По китайскому гороскопу
	if (year % 12 == 4) strcpy(zodiakKitay, arrZodiakKitay[0]);	// Крыса
	else
	if (year % 12 == 5) strcpy(zodiakKitay, arrZodiakKitay[1]);	// Бык
	else
	if (year % 12 == 6) strcpy(zodiakKitay, arrZodiakKitay[2]);	// Тигр
	else
	if (year % 12 == 7) strcpy(zodiakKitay, arrZodiakKitay[3]);	// Кролик
	else
	if (year % 12 == 8) strcpy(zodiakKitay, arrZodiakKitay[4]);	// Дракон
	else
	if (year % 12 == 9) strcpy(zodiakKitay, arrZodiakKitay[5]);	// Змея
	else
	if (year % 12 == 10) strcpy(zodiakKitay, arrZodiakKitay[6]);// Лошадь
	else
	if (year % 12 == 11) strcpy(zodiakKitay, arrZodiakKitay[7]);// Овца
	else
	if (year % 12 == 0) strcpy(zodiakKitay, arrZodiakKitay[8]);	// Обезьяна
	else
	if (year % 12 == 1) strcpy(zodiakKitay, arrZodiakKitay[9]);	// Петух
	else
	if (year % 12 == 2) strcpy(zodiakKitay, arrZodiakKitay[10]);// Собака
	else
	if (year % 12 == 3) strcpy(zodiakKitay, arrZodiakKitay[11]);// Свинья


	rus("По знаку зодиака вы ");		rus(zodiak);		rus("\n");
	rus("По китайскому гороскопу вы ");	rus(zodiakKitay);	rus("\n");

	cin.get();
	cin.get();
	return 0;
}
viron вне форума Ответить с цитированием
Старый 19.12.2011, 16:38   #8
Dima9876543210
 
Регистрация: 26.10.2011
Сообщений: 4
По умолчанию

Скажите, а как сделать так, чтобы эта программа обращалась к файлу и выдавала гороскоп оттуда в зависимости от знака зодиака и года по китайскому календарю???
Dima9876543210 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтр по дате рождения? Evgen1976 Microsoft Office Access 2 10.12.2013 21:15
программа на c++ "определение гороскопа по дате рождения" Dima9876543210 Помощь студентам 0 07.12.2011 00:11
по дате рождения вывести восточный и западный гороскопы с краткой характеристикой и рисунками (Delphi) dark999 Помощь студентам 6 22.04.2011 23:12
Подсчет возраста по дате рождения Zemka Microsoft Office Access 1 29.05.2009 17:18
Как посчитать возраст по дате рождения dreamMaster SQL, базы данных 10 18.07.2008 16:37