пятница, 16 декабря 2011 г.

Код символа [c,c++]

Задача:

Создать программу, которая выводить код введенного символа. А также создать выход из программы нажав например точку (.)

Код программы:


#include "stdio.h"
#include "conio.h"

void main()
{
 clrscr();
 int s;
 unsigned char ch;
 s=0;

 printf ("%30sКод символа!\n");
 printf ("\nДля завершения введите точку\n");
 printf ("Вводите символы:\n");

 do
 {
  ch = getch();
  printf ("Символ: %c Код: %i\n", ch, ch);
 }
 while(ch !='.');
 getch();
}

Результат:


вторник, 13 декабря 2011 г.

Вычисление интеграла (Метод прямоугольников) [c,c++]

Задача:

Написать программу приближенного вычисления интеграла функции f(x)=5x^2-x+2 методом прямоугольников. Диапазон x1, x2 и шаг изменения аргумента dx задается вручную!

Код программы:

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

void main()
{
 clrscr();
 float a,b; // границы отрезка
 float dx; // приращение аргумента
 float s; // приближенное значение интеграла
 int n; // количество интервалов
 float x; // аргумент
 float y; // значение функции в начале интервала
 int i;

 printf ("Приближенное вычесление интеграла! (f(x)=5x^2-x+2)\n");
 printf ("Метод прямоугольников\n");
 printf ("\nВведите:\n");

 printf ("Нижняя граница интервала:\n");
 printf ("=>");
 scanf  ("%f",&a);

 printf ("Верхняя граница интервала:\n");
 printf ("=>");
 scanf  ("%f",&b);

 printf ("Приращение аргумента:\n");
 printf ("=>");
 scanf  ("%f",&dx);

 n=(b-a)/dx+1;
 x=a;
 s=0;

 for (i=1; i<=n; i++)
 {
  y=x*x+2; // значение функции в начале интервала
  s+=y*dx;
  x+=dx;
 }
 printf ("\n\nЗначение интеграла: %6.3f",s);
 getch();
}

Результат:



Контроль веса [c,c++]

Задача:

Написать программу, которая вычисляет оптимальный вес девушки, сравнивает его с реальным и выдает рекомендации о необходимости поправиться или похудеть! Оптимальный вес вычисляется по формуле:
Опт. вес=Рост(см)-100

Код программы:

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

void main()
{
 clrscr();
 float w,h,opt,d; // w-вес, h-рост, opt-оптимальный вес
// d-отклонение от оптимального веса

 printf ("Введите:\n\n");
 printf ("Рост (см)\n");
 scanf  ("%f", &h);
 printf ("Вес (кг)\n");
 scanf  ("%f", &w);
 opt=h-110;

 if (w==opt)
  printf ("\nВаш вес оптимален!");
 else

 if (w<opt)
 {
  d=opt-w;
  printf ("\nВам надо поправиться на %2.2f кг!\n",d);
 }
 else
 {
  d=w-opt;
  printf ("Вам надо похудеть на %2.2f кг\n",d);
 }
 getch();
}

Результат:



пересчет величины времени [c,c++]

Задача:

Написать программу, которая пересчитывает величину временного интервала, заданного в минутах, выраженную в часах и минутах.

Код программы:


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

void main()
{
 clrscr();
 int min; // интервал в минутах
 int h; // кол-во часов
 int m; // кол-во минут

 printf ("Введите временной интервал (в минутах)\n");
 printf ("\n=>");
 scanf  ("%i", &min);

 h=(int)min/60;
 m=min%60;

 printf ("\n%iмин = %iчас %iмин.\n", min, h, m);
 getch();
}

Результат:



среда, 7 декабря 2011 г.

Использование функций на деле!!!

Задача:

Написать программу, реализующую игру "Угадай число".*


Код программы:

#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
#include "time.h"

#define N 3 // кол-во цифр в числе
#define DEBUG // отладка

void main()
{
 clrscr();
 {
  char pl[N]; // игрок
  char pc[N]; // компьютер

  int a[N]; // a[i] == 1 если i-я цифра
   // pc совпала с одной из цифрой pl
  int ugad; // угадано чисел
  int mesto; // из них на своих местах
  int i, j;     // индексы
  time_t t;

  printf ("Игра:%25sУгАдАй ЧиСлО!!\n");
  srand((unsigned)time(&t));

  for (i=0; i<N; i++)
   pc[i]=rand() % 10 + 48;
   //48-код символа '0'

#ifdef DEBUG

  printf ("\n\nКомпьютер задумал 3-х значное число:\n");

  for (i=0; i<N; i++)

                
#endif

  do
  {
   printf ("\nВаш Вариант => ");
   scanf  ("%s", &pl);

   for (i=0; i<N; i++)
    a[i]=0;

   // проверка сколько цифр угадано
   ugad=0;
                // каждую цифру игрока
   // сравним с цифрами ПК

   for (i=0; i<N; i++)
    for (j=0; j<N; j++)
    {
     if ((pl[i]==pc[j])&& !a[j])
     {
      ugad++;
      a[j]=1; // запретим сравнивать эту
   // цифру ПК с еще не проверенными
   // цифрами игрока
      break;
     }
    }
   // проверим, сколько на своих местах
   mesto=0;
   for(i=0; i<N; i++)
    if (pl[i]==pc[i])
   mesto++;
   printf ("Угадано: %i. На своих местах: %i",ugad,mesto);
  }
 while ((ugad<N) || (mesto<N));
 printf ("\n\nПоздравляю! Вы угадали число\n");
 }
 getch();
}

Результат:







* Правила игры: Компьютер загадал трехзначное число. Вам надо за меньшее количество ходов угадать это число. после каждого хода компьютер дает подсказку - если та или иная цифра в загаданном числе. К примеру: компьютер загадал число 782. Вы предположили, что это число 281. Компьютер дает подсказку: Вы угадали две цифры "2" и "8", но при этом одно из них стоит на своем месте "8".