не могу закончить курсовую.. может кто-то поможет?

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
mobi_vic
Сообщения: 2
Зарегистрирован: 06 июн 2007, 08:35

не могу закончить курсовую.. может кто-то поможет?

Сообщение mobi_vic » 06 июн 2007, 08:38

здраствуйте все!
у меня возникла проблема с курсовой работой, не получаеться, и все.. :( (
я то ее сделал без функций, но преподователь сказала, что надо обьязательно с функциями, помогите кто может плиз...

задание: написать программу, которая при введении любого номера года нашей эры, и выводит его название за старым японским календарем. Окончание названий циклов, и подциклов подать в родительном падеже. Сделать понятный интерфейс.
для справки: в старом японском календаре был принят 60-летний цикл, который состоял из пяти 12-летних циклов. подциклы обозначались названиями цветов: зеленый, красный, желтый, белый, и черный. В средине каждого подцикла года носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, курицы, собаки и свиньи.
(Например: 1984 год - год зеленой крысы, был началом красного цикла.)

программа без функций:

Код: Выделить всё

 #include<stdio.h>
 #include<conio.h>
 #include<math.h>
 void main (){
 clrscr();
 int rik, x, y, z,menu;
 menu=-1;
 while (menu!=0) {
 printf ("*****************************************\n");
 printf ("*  	  MENU:                         * \n*                                       *\n");
 printf ("*	 1. Vvedit' rik dlya poshuku    *  \n");
 printf ("*	 0. vuhid                       *\n");
 printf ("*****************************************");
 printf ("\n\n	 zrobit' vybir:");
 scanf ("%d",&menu);
 if (menu==1) {
 clrscr ();
 printf ("vvedit rik dlya poshuku v kalendari: ");
 scanf ("%d", &rik);
 printf ("rik %d - rik ", rik);
 x=rik % 12;
 if (x==0){ printf ("mavpy, ");};
 if (x==1){ printf ("kurky, ");};
 if (x==2){ printf ("ssvuni, ");};
 if (x==3){ printf ("sobaky, ");};
 if (x==4){ printf ("shura, ");};
 if (x==5){ printf ("korovy, ");};
 if (x==6){ printf ("tygra, ");};
 if (x==7){ printf ("zajcya, ");};
 if (x==8){ printf ("drakona, ");};
 if (x==9){ printf ("zmiji, ");};
 if (x==10){ printf ("konya, ");};
 if (x==11){ printf ("vivci, ");};
 y=rik / 12;
 z=y%5;
 if (z==0){ printf ("chornogo ciklu\n");};
 if (z==1){ printf ("zelenogo ciklu\n");};
 if (z==2){ printf ("chervonogo ciklu\n");};
 if (z==3){ printf ("zhovtogo ciklu\n");};
 if (z==4){ printf ("bilogo ciklu\n");}; }
 getch ();
 clrscr();
 if (menu==0) { printf ("\n\n         this programm made by solnishko.\n    \n	 press any key to Exit."); getch (); break;}}
 }
вот програмка:
скачать в формате срр


это - с функциями, тока почему-то не работает :( (

Код: Выделить всё

 #include<stdio.h>
 #include<conio.h>
 #include<math.h>
 int rik;
 void menu ();
 void roku ();
 void main (){
 clrscr();
 void menu ();
 }

void menu () {
int menu=-1;
 while (menu!=0) {
 printf ("*****************************************\n");
 printf ("*  	  MENU:                         * \n*                                       *\n");
 printf ("*	 1. Vvedit' rik dlya poshuku    *  \n");
 printf ("*	 0. vuhid                       *\n");
 printf ("*****************************************");
 printf ("\n\n	 zrobit' vybir:");
 scanf ("%d",&menu);
 if (menu==1) {
 clrscr ();
 printf ("vvedit rik dlya poshuku v kalendari: ");
 scanf ("%d", &rik);
 printf ("rik %d - rik ", rik);
 if (menu==0) { printf ("\n\n         this programm made by solnishko.\n    \n	 press any key to Exit."); getch (); break;}}
 void roku ();
 return;
 }


void roku (int rik) {
int x,y,z;
 x=rik % 12;
 if (x==0){ printf ("mavpy, ");};
 if (x==1){ printf ("kurky, ");};
 if (x==2){ printf ("ssvuni, ");};
 if (x==3){ printf ("sobaky, ");};
 if (x==4){ printf ("shura, ");};
 if (x==5){ printf ("korovy, ");};
 if (x==6){ printf ("tygra, ");};
 if (x==7){ printf ("zajcya, ");};
 if (x==8){ printf ("drakona, ");};
 if (x==9){ printf ("zmiji, ");};
 if (x==10){ printf ("konya, ");};
 if (x==11){ printf ("vivci, ");};
 y=rik / 12;
 z=y%5;
 if (z==0){ printf ("chornogo ciklu\n");};
 if (z==1){ printf ("zelenogo ciklu\n");};
 if (z==2){ printf ("chervonogo ciklu\n");};
 if (z==3){ printf ("zhovtogo ciklu\n");};
 if (z==4){ printf ("bilogo ciklu\n");}; }
 getch ();
 return;
 }
вот програмка:
скачать в формате срр




и последний вариант, который тоже не работает :( ((:
мне предложили написать так..

Код: Выделить всё


void roki () {
int x,y,z;

mobi_vic
Сообщения: 2
Зарегистрирован: 06 июн 2007, 08:35

Re: не могу закончить курсовую.. может кто-то поможет?

Сообщение mobi_vic » 06 июн 2007, 11:31

закончил!!!
спасибо всем ;)

Код: Выделить всё

 #include<stdio.h>
 #include<conio.h>
 #include<math.h>
 unsigned int rik;
 void menu ();
 void roku ();
 void main (){
 clrscr();
 menu ();

 }

void menu () {
int menu=-1;
 while (menu!=0) {
 printf ("*****************************************\n");
 printf ("*  	  MENU:                         * \n*                                       *\n");
 printf ("*	 1. Vvedit' rik dlya poshuku    *  \n");
 printf ("*	 0. vuhid                       *\n");
 printf ("*****************************************");
 printf ("\n\n	 zrobit' vybir:");
 scanf ("%d",&menu);
 if (menu==1) { clrscr (); printf ("vvedit rik dlya poshuku v kalendari: ");
 scanf ("%d", &rik);
 printf ("rik %d - rik ", rik); roku (); }
clrscr();
 if (menu==0) { printf ("\n\n         this programm made by victor krushanovskij.\n    \n	 press any key to Exit."); getch (); break;}}
 void roku ();
 return;
 }


void roku () {
unsigned int x,y,z;

 x=rik % 12;
 if (x==0){ printf ("mavpy, ");}
 if (x==1){ printf ("kurky, ");}
 if (x==2){ printf ("ssvuni, ");}
 if (x==3){ printf ("sobaky, ");}
 if (x==4){ printf ("shura, ");}
 if (x==5){ printf ("korovy, ");}
 if (x==6){ printf ("tygra, ");}
 if (x==7){ printf ("zajcya, ");}
 if (x==8){ printf ("drakona, ");}
 if (x==9){ printf ("zmiji, ");}
 if (x==10){ printf ("konya, ");}
 if (x==11){ printf ("vivci, ");}
 y=rik / 12;
 z=y%5;
 if (z==0){ printf ("chornogo ciklu\n");}
 if (z==1){ printf ("zelenogo ciklu\n");}
 if (z==2){ printf ("chervonogo ciklu\n");}
 if (z==3){ printf ("zhovtogo ciklu\n");}
 if (z==4){ printf ("bilogo ciklu\n");}
 getch ();
  }

Аватара пользователя
Romeo
Сообщения: 3091
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Re: не могу закончить курсовую.. может кто-то поможет?

Сообщение Romeo » 06 июн 2007, 13:06

Что, с передачей параметров не разобрался?

Вот исправленный первый вариант, где используется передача параметров.

Код: Выделить всё

#include<stdio.h>
#include<conio.h>
#include<math.h>

void menu ();
void roku ();

void main ()
{
 clrscr();
 menu ();
}

void menu () 
{
 int menu = -1;
 int rik;

while (menu!=0) 
{
  printf ("*****************************************\n");
  printf ("*  	  MENU:                         * \n*                                       *\n");
  printf ("*	 1. Vvedit' rik dlya poshuku    *  \n");
  printf ("*	 0. vuhid                       *\n");
  printf ("*****************************************");
  printf ("\n\n	 zrobit' vybir:");

  scanf ("%d",&menu);
  if (menu==1) 
  {
    clrscr ();
    printf ("vvedit rik dlya poshuku v kalendari: ");
    scanf ("%d", &rik);
    printf ("rik %d - rik ", rik);
    if (menu==0) 
    { 
     printf ("\n\n         this programm made by solnishko.\n    \n	 press any key to Exit."); 
     getch (); 
     break;
    }
  }

  roku();
}

void roku (int rik) 
{
 int x, y, z;
 x = rik % 12;
 if (x==0){ printf ("mavpy, ");};
 if (x==1){ printf ("kurky, ");};
 if (x==2){ printf ("ssvuni, ");};
 if (x==3){ printf ("sobaky, ");};
 if (x==4){ printf ("shura, ");};
 if (x==5){ printf ("korovy, ");};
 if (x==6){ printf ("tygra, ");};
 if (x==7){ printf ("zajcya, ");};
 if (x==8){ printf ("drakona, ");};
 if (x==9){ printf ("zmiji, ");};
 if (x==10){ printf ("konya, ");};
 if (x==11){ printf ("vivci, ");};
 y = rik / 12;
 z = y%5;
 if (z==0){ printf ("chornogo ciklu\n");};
 if (z==1){ printf ("zelenogo ciklu\n");};
 if (z==2){ printf ("chervonogo ciklu\n");};
 if (z==3){ printf ("zhovtogo ciklu\n");};
 if (z==4){ printf ("bilogo ciklu\n");}; }
 getch();
 return;
}
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.

Ответить