AMV News
Музыкальные аниме клипы
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход  

Программирование
На страницу Пред.  1, 2
 
Начать новую тему   Ответить на тему    Список форумов AMV News -> Креатив
Предыдущая тема :: Следующая тема  
Автор Сообщение
Roman_cat_Marcus



Пол: Пол:Муж

Заядлый
Рега: 23.09.2012
Сообщения: 1815

СообщениеДобавлено: Пн Дек 19, 2016 5:13 pm    Заголовок сообщения: Ответить с цитатой

Погугли Visual Studio. отталкивайся от этого.
пиши в нем на C#

_________________
O tempora, o mores!
"Разброс" это фрагментированная линейность.
Miraculous LadyBug
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Вт Дек 20, 2016 5:58 am    Заголовок сообщения: Ответить с цитатой

Помимо Visual studio (на нём, кстати, написана моя программа "The wall" - см. подпись) в закромах лежат Visual Basic 5, Visual C 6, Visual C 7. Лет 15 уже.

А в этой программе нужно вводить только три целых числа.
Код:
/*   p13
     Язык Turbo C 2.0
     Основы программирования
     Переменные: int - 3   */

/*   1 - 22k, 3 - 23k, 7 - 25k, 14 - 26k, 18 - 27k   */

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


d ();   /*   Нет решений.   */
e ();   /*   Решение - любое число.   */
f (float);   /*   Один корень.   */
g (float, float);   /*   Два корня.   */
h (float, float, float);   /*   Три корня.   */
i (float, float, float, float);   /*   Четыре корня.   */


main ()
{
   int a, b, c;   /*   исходные данные   */
   int j, k;      /*   натуральные числа   */
   int l, m, n, o;
   float p, q;

   printf ("Введите три целых числа: ");
   scanf ("%i%i%i", &a, &b, &c);

   /*   13.1.2. Составить алгоритм решения квадратного уравнения
   ax^2 + bx + c = 0.   */

   j = b * b - 4 * a * c;
   printf ("1. ");
   if (a == 0)
      if (b == 0)
    if (c == 0) e (); else d ();
      else
    f ((float) -c / b);
   else
      if (j < 0)
    d ();
      else
    if (j == 0)
       f (-b / 2. / a);
    else
       g ((-b - sqrt (j)) / 2 / a, (-b + sqrt (j)) / 2 / a);

   /*   16.1.3. Вычислить n!   */

   j = 1;
   for (k = 1; k < a; k++)  j *= k + 1;
   printf ("2. %i! = %i.\n", a, j);

   /*   18.1.4. Даны два натуральных числа M и N. Вычислить их наибольший
   общий делитель НОД (M, N).   */

   j = a;
   k = b;
   if (j < 0) j = -j;
   if (k < 0) k = -k;
   if (j == 0) j = 1;
   if (k == 0) k = 1;
   l = j;
   m = k;
   while (l - m)  if (l > m)  l -= m;  else  m -= l;
   printf ("3. НОД (%i, %i) = %i.\n", a, b, l);

   /*   19.1.5. Составить алгоритм вычисления степенной функции с целым
   показателем y = x ^ k, где k - целое число.   */

   l = 1;
   for (m = 0; m < k; m++)  l *= a;
   printf ("4. %i ^ %i = ", a, b);
   if (a == 0)
      printf ("0.\n");
   else
      if (b == 0)
    printf ("1.\n");
      else
    if (b > 0)
       printf ("%i.\n", l);
    else
       if (l == 0)
          printf ("0.\n");
       else
          printf ("%.4g.\n", 1. / l);

   /*   21.3.8. Даны три положительных числа. Составить алгоритм,
   определяющий, могут ли они быть длинами сторон треугольника.   */

   if (a > 0  &&  b > 0  &&  c > 0  &&  a + b > c  &&  a + c > b  &&  b + c > a)
      printf ("5. Числа могут быть длинами сторон треугольника.\n");
   else
      printf ("5. Числа не могут быть длинами сторон треугольника.\n");

   /*   21.4.9. Пусть компьютер способен выполнять только две арифметические
   операции - сложение и вычитание. Составить алгоритмы:
   а) умножения двух целых чисел;
   б) целочисленного деления двух чисел;
   в) получения остатка от целочисленного деления двух чисел.   */

   l = 0;
   for (m = 0; m < j; m++)  l += k;
   printf ("6. %i * %i = %i, ", j, k, l);
   l = 0;
   m = j;
   while (m >= k) {m -= k; l++;}
   printf ("%i / %i = %i, %i %% %i = %i.\n", j, k, l, j, k, m);

   /*   21.5.10. Построить алгоритм решения биквадратного уравнения,
   используя как вспомогательный алгоритм решения квадратного уравнения.   */

   l = b * b - 4 * a * c;
   printf ("7. ");
   if (a == 0)
      if (b == 0)
    if (c == 0) e (); else d ();
      else
      {
    p = (float) -c / b;
    if (p < 0)
       d ();
    else
       if (p == 0)
          f (0);
       else
          g (-sqrt (p), sqrt (p));
      }
   else
      if (l < 0)
    d ();
      else
    if (l == 0)
    {
       p = -b / 2. / a;
       if (p < 0)
          d ();
       else
          if (p == 0)
        f (0);
          else
        g (-sqrt (p), sqrt (p));
    }
    else
    {
       p = (-b - sqrt (l)) / 2 / a;
       q = (-b + sqrt (l)) / 2 / a;
       if (p < 0)
          if (q < 0)
        d ();
          else
        if (q == 0)
           f (0);
        else
           g (-sqrt (q), sqrt (q));
       else
          if (p == 0)
        if (q < 0)
           f (0);
        else
           h (-sqrt (q), 0, sqrt (q));
          else
        if (q < 0)
           g (-sqrt (p), sqrt (p));
        else
           if (q == 0)
         h (-sqrt (p), 0, sqrt (p));
           else
         i (-sqrt (q), -sqrt (p), sqrt (p), sqrt (q));
    }

   /*   21.6.11. Составить алгоритм нахождения НОД трех натуральных чисел,
   используя вспомогательный алгоритм нахождения НОД двух чисел.   */

   l = c;
   if (l < 0) l = -l;
   if (l == 0) l = 1;
   m = j;
   n = k;
   while (m - n)  if (m > n)  m -= n;  else  n -= m;
   n = l;
   while (m - n)  if (m > n)  m -= n;  else  n -= m;
   printf ("8. НОД (%i, %i, %i) = %i.\n", a, b, c, m);

   /*   33.1.12.   */

   l = a;
   if (l < b)  l = b;
   if (l < c)  l = c;
   printf ("9. max (%i, %i, %i) = %i.\n", a, b, c, l);

   /*   48.9.21. Присвоить целой переменной h значение цифры, стоящей в
   разряде сотен в записи положительного целого числа k (например, если
   k = 28796, то h = 7).   */

   printf ("10. Число сотен равно %i.\n", a % 1000 / 100);

   /*   48.10.22. Целой переменной S присвоить значение суммы цифр
   трехзначного целого числа k.   */

   l = a % 1000;
   m = l / 100 + l / 10 % 10 + l % 10;
   printf ("11. Сумма цифр равна %i.\n", m);

   /*   63.1.27. По длинам трех сторон треугольника a, b, c вычислить его
   площадь.   */

   p = (a + b + c) / 2.;
   q = p * (p - a) * (p - b) * (p - c);
   if (q < 0)  q = 0;
   printf ("12. Площадь треугольника %.4g.\n", sqrt (q));

   /*   65.1.29. Вычислить сумму целых чисел от M до N путем прямого
   суммирования.   */

   l = 0;
   m = a;
   while (1)
   {
      if (m > b)  break;
      l += m;
      if (m == 32767)  break;
      m++;
   }

   printf ("13. Сумма чисел от %i до %i равна %i.\n", a, b, l);

   /*   68.6.34.   */

   printf ("\nx\tsin x\t cosx\n");
   printf ("-----------------------\n");
   for (l = 0; l < 11; l++)
   {
      p = l / 10.;
      printf ("%-.4g\t%-.4f\t %-.4g\n", p, sin (p), cos (p));
   }

   printf ("-----------------------\n\n");

   /*   68.7.35. Напечатать в возрастающем порядке все трехзначные числа, в
   десятичной записи которых нет одинаковых цифр.   */

   for (l = 1; l < 10; l++)
      for (m = 0; m < 10; m++)
    for (n = 0; n < 10; n++)
       if (l - m  &&  m - n  &&  l - n)  printf ("%i%i%i  ", l, m, n);

   /*   68.8.36. Дано целое n > 2. Напечатать все простые числа из диапазона
   [2, n].   */

   printf ("\n\n16. Простые числа: ");
   for (l = 2; l <= a; l++)
   {
      m = sqrt (l);
      n = 0;
      for (o = 2; o < m + 1; o++)  if (l % o == 0)  n = 1;
      if (n == 0)  printf ("%i  ", l);
      if (l > 32766)  break;
   }

   /*   70.1.37. С помощью приведенной программы определите на вашем
   компьютере величину машинного epsilon.   */

   p = 1;
   while (1 + p > 1)  p /= 2;
   printf ("\n\n17. Машинный эпсилон %.4g.\n", p);

   /*   71.6.41. Проведите эксперимент на исследование целочисленного
   переполнения, т.е. установите, что происходит с целой переменной, когда
   ее значение превышает maxint.   */

   l = 32766;
   printf ("18. Целочисленное переполнение: %i - %u, ", l, l);
   l++;
   printf ("%i - %u, ", l, l);
   l++;
   printf ("%i - %u,\n", l, l);
   l++;
   printf ("%i - %u.\n", l, l);


   getch ();
   printf ("\n");
}


d () {printf ("Решений нет.\n");}
e () {printf ("Решение - любое число.\n");}
f (float a) {printf ("x = %.4g.\n", a);}
g (float a, float b) {printf ("x1 = %.4g, x2 = %.4g.\n", a, b);}
h (float a, float b, float c) {printf ("x1 = %.4g, x2 = %.4g, x3 = %.4g.\n", a, b, c);}
i (float a, float b, float c, float d) {printf ("x1 = %.4g, x2 = %.4g, x3 = %.4g, x4 = %.4g.\n", a, b, c, d);}
/* */

_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Roman_cat_Marcus



Пол: Пол:Муж

Заядлый
Рега: 23.09.2012
Сообщения: 1815

СообщениеДобавлено: Вт Дек 20, 2016 11:48 am    Заголовок сообщения: Ответить с цитатой

Напиши иуже какуюто игру!!!!! а не эти детские задачки.
_________________
O tempora, o mores!
"Разброс" это фрагментированная линейность.
Miraculous LadyBug
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Вт Дек 20, 2016 5:18 pm    Заголовок сообщения: Ответить с цитатой

В 2000-ом году я написал игру "Сокобан" на языке "FoxPro 2.6". Могу специально для тебя сфотографировать распечатку листинга этой программы.

Добавлено спустя 6 минут 25 секунд:

У меня сейчас одна цель - прочитать книгу. Что я и делаю. Других целей поставить не могу, потому что есть куча других дел: переводить статьи сайта "Vocaloid News Network" (vocaloidnews.net) - всё на мне висит; подклеивать мангу - тоже сроки есть. И ещё куча других занятий, как у любого анимешника.
Вот книга и это программирование хороши тем, что это очень ограниченный мир: только ты и я... простите, только я и С. Я там банально отдыхаю.

_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Roman_cat_Marcus



Пол: Пол:Муж

Заядлый
Рега: 23.09.2012
Сообщения: 1815

СообщениеДобавлено: Вт Дек 20, 2016 6:24 pm    Заголовок сообщения: Ответить с цитатой

Цитата:
Могу специально для тебя сфотографировать распечатку листинга этой программы.

Так не пойдет.
Давай делай нам 3Д игру. Шутер какойнить наподобе контр страйк.

_________________
O tempora, o mores!
"Разброс" это фрагментированная линейность.
Miraculous LadyBug
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Forgottenmem





Новичок
Рега: 20.12.2016
Сообщения: 1

СообщениеДобавлено: Вт Дек 20, 2016 8:17 pm    Заголовок сообщения: Ответить с цитатой

jura_k, только ради Вас я зарегистрировался на форуме. Вы мой кумир без всякого злобства. Жду с нетерпением постов с задумками, очередными победами и реализациями поставленных целей=)
Clapping
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Вт Дек 20, 2016 8:50 pm    Заголовок сообщения: Ответить с цитатой

Займись лучше AMV.
_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Вс Сен 23, 2018 3:23 pm    Заголовок сообщения: Ответить с цитатой

Будни программиста.






_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Сб Окт 06, 2018 5:01 pm    Заголовок сообщения: Ответить с цитатой

Программа создана для решения учебных задач в среде Visual C++ 6.0.
Реализованы ввод данных, а также вывод результатов. В приложении рабочая версия программы и архив проекта.
За основу взята архитектура программы MFC.

https://yadi.sk/i/UHolQFkGn5cCrw - текст программы
https://yadi.sk/i/j1MtPspDY4GvLw - задачник
https://yadi.sk/i/S0R3tYR6rweFiw - текст программы
https://yadi.sk/d/thRbgTrYF5RuPg - архив проекта
https://yadi.sk/d/VzoSCO3oJwtQ5A - программа




Код:
//   Файл p11Doc.h

class CP11Doc:public CDocument
{
protected:
   CP11Doc ();
   DECLARE_DYNCREATE (CP11Doc);

   int aa, ab, ac;
   int ad, ae, af;
   int ia [10];
   int ka, kb, kc, kd;
   int la, lb, lc;

   double ib [10];
   CString ic [10];

   double ca, cb;
   double da;

   /*   aa - режим отображения   */
   /*   ab - код введённого символа   */
   /*   ac - указатель на введённый символ   */
   /*   ad - внутренний указатель обрабатываемого символа в строке в функции ga ()   */
   /*   ae - введённое целое число в функции ga ()   */
   /*   af - выбор режима программы   */
   /*   da - введённое рациональное число в функции ga ()   */

   /*   ca ... cb - исходные данные, рациональные числа   */
   /*   ka ... kd - исходные данные, целые числа   */
   /*   la ... lc - исходные данные, натуральные числа   */

   /*   ia [10] - массив целых чисел (результатов) для вывода на экран   */

   char ea [50];   //   место для вводимых символов

   void ga ();      //   перевод данных из символьной формы в цифровую
   void gb ();   //   сборка целого числа из строки
   void gc ();      //   сборка рационального числа из строки
   void ha ();      //   решение задач
};

- - - - - - - - - - - - - - - - - - - -

//   Файл p11Doc.cpp

#include "stdafx.h"
#include <math.h>
#include "p11.h"
#include "p11Doc.h"

CP11Doc::CP11Doc ()
{
   aa = ab = ac = 0;
   ea [0] = ia [0] = 0;
}

void CP11Doc::ga ()
{
   if (aa == 0)
   {
      aa = 1;
      ad = 0;

      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad]) ad++;
      gb ();
      af = ae;

      if (af < 2  ||  af > 3) aa = 2;
      ac = ea [0] = 0;
      return;
   }

   aa = 2;
   ad = 0;

   if (af == 2)
   {
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad]) ad++;
      gb ();
      ka = ae;
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad]) ad++;
      gb ();
      kb = ae;
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad]) ad++;
      gb ();
      kc = ae;
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad]) ad++;
      gb ();
      kd = ae;
   }

   if (af == 3)
   {
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad] != '.'  &&  ea [ad]) ad++;
      gc ();
      ca = da;
      while ((ea [ad] < '0'  ||  ea [ad] > '9')  &&  ea [ad] != '-'  &&  ea [ad] != '.'  &&  ea [ad]) ad++;
      gc ();
      cb = da;
   }

   ha ();
}

void CP11Doc::gb ()
{
   int a;      //   знак числа

   ae = 0;
   a = 1;
   if (ea [ad] == '-') {a = -1; ad++;}
   while (ea [ad] >= '0'  &&  ea [ad] <= '9')
   {
      ae = ae * 10 + ea [ad] - '0';
      ad++;
   }

   ae *= a;
}

void CP11Doc::gc ()
{
   int a;
   double b;

   da = 0;   //   собираемое рациональное число
   a = 1;      //   знак числа
   b = .1;      //   множитель в дробной части числа

   if (ea [ad] == '-') {a = -1; ad++;}
   while (ea [ad] >= '0'  &&  ea [ad] <= '9')
   {
      da = da * 10 + ea [ad] - '0';
      ad++;
   }

   if (ea [ad] == '.')
   {
      ad++;
      while (ea [ad] >= '0'  &&  ea [ad] <= '9')
      {
         da += (ea [ad] - '0') * b;
         ad++;
         b /= 10;
      }
   }

   da *= a;
}

void CP11Doc::ha ()
{
   int a, b, c;
   double d, e;

   if (af == 2)
   {
      /*   11.1.1.   */

      ia [0] = ka * kd;
      ia [1] = kb * kc;

      /*   13.1.2. Составить алгоритм решения квадратного уравнения: ax^2 + bx + c = 0.   */

      if (ka == 0)
         if (kb == 0)
            if (kc == 0)
               a = 3;
            else
               a = 0;
         else
         {
            a = 1;
            d = (double) -kc / kb;
         }
      else
      {
         b = kb * kb - 4 * ka * kc;
         if (b < 0)
            a = 0;
         else
            if (b == 0)
            {
               a = 1;
               d = -kb / 2. / ka;
            }
            else
            {
               a = 2;
               d = (-kb - sqrt (b)) / 2 / ka;
               e = (-kb + sqrt (b)) / 2 / ka;
            }
      }

      switch (a)
      {
         case 0: ic [0].Format ("2. Нет решений."); break;
         case 1: ic [0].Format ("2. x = %.4g.", d); break;
         case 2: ic [0].Format ("2. x1 = %.4g, x2 = %.4g.", d, e); break;
         default: ic [0].Format ("2. Решение - любое число.");
      }

      /*   16.1.3. Вычислить n!   */

      a = 1;
      b = ka + 1;
      if (b > 20) b = 20;
      for (c = 1; c < b; c++) a *= c;
      ia [2] = a;

      /*   18.1.4. Даны два натуральных числа M и N. Вычислить их наибольший общий делитель НОД (M, N).   */

      la = ka; lb = kb; lc = kc;
      if (la < 0) la = -la;      if (!la) la = 1;
      if (lb < 0) lb = -lb;      if (!lb) lb = 1;
      if (lc < 0) lc = -lc;      if (!lc) lc = 1;

      a = la; b = lb;
      while (a - b) if (a > b) a -= b; else b -= a;
      ia [3] = a;
   }   //   конец функции (af = 2)


   if (af == 3)
   {
      /*   19.1.5. Вычислить степенную функцию с целым показателем y = x^k, где k - целое число, x != 0.   */

      ia [4] = a = b = (int) cb;
      if (b < 0) b = -b;

      if (ca == 0)
         ib [0] = 0;
      else
      {
         d = 1;
         for (c = 0; c < b; c++) d *= ca;
         if (a < 0) d = 1 / d;
         ib [0] = d;
      }
   }   //   конец функции (af = 3)
}

- - - - - - - - - - - - - - - - - - - -

//   Файл p11View.cpp

void CP11View::OnDraw (CDC *pDC)
{
   CP11Doc *pdoc = GetDocument ();
   ASSERT_VALID (pdoc);
   CString a;

   if (pdoc -> aa == 0)
   {
      pDC -> TextOut (10, 10, "Введите целое число:");
      pDC -> TextOut (10, 35, pdoc -> ea);
      a.Format ("code = %i", pdoc -> ab);
      pDC -> TextOut (10, 60, a);
      pDC -> TextOut (10, 85, "1. Нет ввода.");
      pDC -> TextOut (10, 110, "2. Ввод целых чисел.");
      pDC -> TextOut (10, 135, "3. Ввод рациональных чисел.");
      return;
   }

   if (pdoc -> aa == 1)
   {
      pDC -> TextOut (10, 10, "Введите целое число:");
      a.Format ("%i", pdoc -> af);
      pDC -> TextOut (10, 35, a);
      a.Format ("code = %i", pdoc -> ab);
      pDC -> TextOut (10, 60, a);
      pDC -> TextOut (10, 85, "1. Нет ввода.");
      pDC -> TextOut (10, 110, "2. Ввод целых чисел.");
      pDC -> TextOut (10, 135, "3. Ввод рациональных чисел.");

      if (pdoc -> af == 2)
      {
         pDC -> TextOut (10, 160, "Введите четыре целых числа:");
         pDC -> TextOut (10, 185, pdoc -> ea);
      }

      if (pdoc -> af == 3)
      {
         pDC -> TextOut (10, 160, "Введите два рациональных числа:");
         pDC -> TextOut (10, 185, pdoc -> ea);
      }

      return;
   }

   if (pdoc -> af == 2)
   {
      pDC -> TextOut (10, 10, "Введите целое число:");
      a.Format ("%i", pdoc -> af);
      pDC -> TextOut (10, 35, a);
      a.Format ("code = %i", pdoc -> ab);
      pDC -> TextOut (10, 60, a);
      pDC -> TextOut (10, 85, "1. Нет ввода.");
      pDC -> TextOut (10, 110, "2. Ввод целых чисел.");
      pDC -> TextOut (10, 135, "3. Ввод рациональных чисел.");
      pDC -> TextOut (10, 160, "Введите четыре целых числа:");
      pDC -> TextOut (10, 185, pdoc -> ea);
      a.Format ("%i %i %i %i", pdoc -> ka, pdoc -> kb, pdoc -> kc, pdoc -> kd);
      pDC -> TextOut (10, 210, a);

      a.Format ("1. %i / %i : %i / %i = %i / %i.", pdoc -> ka, pdoc -> kb, pdoc -> kc, pdoc -> kd, pdoc -> ia [0], pdoc -> ia [1]);
      pDC -> TextOut (10, 260, a);
      pDC -> TextOut (10, 285, pdoc -> ic [0]);
      a.Format ("3. %i! = %i.", pdoc -> ka, pdoc -> ia [2]);
      pDC -> TextOut (10, 310, a);
      a.Format ("4. НОД (%i, %i) = %i.", pdoc -> la, pdoc -> lb, pdoc -> ia [3]);
      pDC -> TextOut (10, 335, a);
   }

   if (pdoc -> af == 3)
   {
      pDC -> TextOut (10, 10, "Введите целое число:");
      a.Format ("%i", pdoc -> af);
      pDC -> TextOut (10, 35, a);
      a.Format ("code = %i", pdoc -> ab);
      pDC -> TextOut (10, 60, a);
      pDC -> TextOut (10, 85, "1. Нет ввода.");
      pDC -> TextOut (10, 110, "2. Ввод целых чисел.");
      pDC -> TextOut (10, 135, "3. Ввод рациональных чисел.");
      pDC -> TextOut (10, 160, "Введите два рациональных числа:");
      pDC -> TextOut (10, 185, pdoc -> ea);
      a.Format ("%g %g", pdoc -> ca, pdoc -> cb);
      pDC -> TextOut (10, 210, a);

      a.Format ("5. %g ^ %i = %g.", pdoc -> ca, pdoc -> ia [4], pdoc -> ib [0]);
      pDC -> TextOut (10, 260, a);
   }
}

void CP11View::OnChar (UINT nChar, UINT nRepCnt, UINT nFlags)
{
   CP11Doc *pdoc = GetDocument ();
   ASSERT_VALID (pdoc);

   pdoc -> ab = nChar;
   if (nChar == 8)
   {
      if (pdoc -> ac) {pdoc -> ac--; pdoc -> ea [pdoc -> ac] = 0;}
      goto aaa;
   }

   if (nChar == 13)
   {
      pdoc -> ga ();
      goto aaa;
   }

   if (pdoc -> ac < 49)
   {
      pdoc -> ea [pdoc -> ac] = nChar;
      pdoc -> ea [pdoc -> ac + 1] = 0;
      pdoc -> ac++;
   }

aaa:
   Invalidate ();
   CView::OnChar (nChar, nRepCnt, nFlags);
}

_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lion0608



Пол: Пол:Жен
Возраст: 44
Заядлый
Рега: 04.11.2011
Сообщения: 1955
Откуда: Межпространственный кластер "Москва-Питер"...
Страна: Россия

СообщениеДобавлено: Вс Окт 21, 2018 8:15 pm    Заголовок сообщения: Ответить с цитатой

jura_k
молодец.

У тебя образование тоже - программирование?

_________________
formspring
WA
Fantlab
Kinopoisk
Facebook



Car Salesman: Say. Are you fellows drinking?
Duke: Not me. We're responsible people.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Ср Окт 24, 2018 7:21 pm    Заголовок сообщения: Ответить с цитатой

Нет, инженер-физик. Между прочим, меня когда-то оставили на второй год. Именно из-за программирования. Единственный раз в жизни.
Но тяга к программированию неистребима!

_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Lion0608



Пол: Пол:Жен
Возраст: 44
Заядлый
Рега: 04.11.2011
Сообщения: 1955
Откуда: Межпространственный кластер "Москва-Питер"...
Страна: Россия

СообщениеДобавлено: Чт Окт 25, 2018 1:58 pm    Заголовок сообщения: Ответить с цитатой

jura_k писал(а):
Нет, инженер-физик. Между прочим, меня когда-то оставили на второй год. Именно из-за программирования. Единственный раз в жизни.
Но тяга к программированию неистребима!


Хаха.
У меня папа тоже физик по образованию. электронщик. Но им на их разработках не устраивало стороннее по, они сами сели осваивать и писать С++ в основном, но он вроде и другие какие-то языки учил.

Я просто думаю, как много потеряла, не имея матобразования, что не занялась программированием в свое время.

Про код мне шутки нравятся.

_________________
formspring
WA
Fantlab
Kinopoisk
Facebook



Car Salesman: Say. Are you fellows drinking?
Duke: Not me. We're responsible people.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Чт Окт 25, 2018 4:25 pm    Заголовок сообщения: Ответить с цитатой

Так я тоже свой софт пишу... Чем и занимаюсь
_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Пт Дек 28, 2018 6:31 pm    Заголовок сообщения: Ответить с цитатой

Код:
//   p126 - одиночные строки

struct student stud1, stud2;
strcpy (stud1.name, "Иванов М. С.");
printf ("%s", stud2.group);
struct student stud1kurs [200];
stud1kurs [24].kurs;

stud1.name [4];
stud1 = stud2;
func1 (first.a);
func2 (&second.b);
struct stru *adr_pointer;

//   p127

(*a).x;
a.address.house = 101;
union u alpha, beta;
u.ch = '5';
printf ("%i, %i", win, aut);

enum value {one = 1, two, three, ten = 10, thousand = 1000, next};
printf ("%i, %i, %i, %i, %i", one, two, ten, thousand, next);
typedef char SYMBOL;
typedef unsigned UNSIGN;
typedef float real;

//   p131

struct st_tag avar;
student avar;


Добавлено спустя 59 секунд:

Код:
//   p125 - группы операторов

struct student
{
   char name [30];
   int kurs;
   char group [3];
   int stip;
};

struct student
{
   char name [30];
   char kurs;
   char group [3];
   int stip;
} stud1, stud2;

struct complex
{
   float x;
   float y;
} c1, c2;

struct complex *a;
a = &c1;

//   p127

struct addr
{
   char city [30];
   char street [30];
   int house;
};

struct fulladdr
{
   struct addr address;
   int room;
   char name [30];
} f, g;

struct onebit
{
   unsigned one_bit: 1;
} obj;

//   p128

union u
{
   int i;
   char ch;
   long l;
};

enum seasons {win, spr, sum, aut};
enum seasons s;

typedef struct st_tag
{
   char name [30];
   int kurs;
   char group [3];
   int stip;
} student;


Добавлено спустя 10 минут 1 секунду:

Код:
//   Локальные структуры

struct aa      //   struct first, stru
{
   int a;
   char b;
};

struct ab      //   struct second
{
   int a;
   char b;
};

struct ac      //   struct byte
{
   int b1: 1; int b2: 1; int b3: 1; int b4: 1; int b5: 1; int b6: 1; int b7: 1; int b8: 1;
};

union ad      //   union bits
{
   char a;
   struct ac b;
};

struct aa bb;
struct ab bc;
union ad bd;

//   Локальные функции

ee (struct aa, CDC *);
ef (union ad, CDC *);      //   decode

//   Локальные переменные

int gg = 10, gh = 10;      //   координаты вывода текста
int gi = 100;


void CP127View::OnDraw (CDC *pDC)
{
   CP127Doc *pdoc = GetDocument ();
   ASSERT_VALID (pdoc);

   int a;
   double d;
   CString g;
   int gi = 5;

   //   p125
   bb.a = 1;
   bb.b = 'f';
   bc.a = bb.a;

   //   p126
   bb.a = 1;
   bb.b = '2';
   ee (bb, pDC);

   //   p129
   bd.a = 'a';
   ef (bd, pDC);

   //   p164
   pDC -> TextOut (gg, gh, "4. C++ - хороший язык.");
   gh += 25;

   a = 100;
   g.Format ("Вы ввели число %i.", a);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   d = 1.2345;
   g.Format ("Переменная типа double %g.", d);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   //   p166
   g.Format ("5. Локальная переменная %i.", gi);
   pDC -> TextOut (gg, gh, g);
   gh += 25;

   g.Format ("Глобальная переменная %i.", ::gi);
   pDC -> TextOut (gg, gh, g);
   gh += 25;
}


//   Локальные функции

ee (struct aa bb, CDC *pDC)
{
   CString a;

   a.Format ("2. %i, %i.", bb.a, bb.b);
   pDC -> TextOut (gg, gh, a);
   gh += 25;
   return 0;
}

ef (union ad bd, CDC *pDC)
{
   CString a = "3. ";

   if (bd.b.b8) a += '1'; else a += '0';
   if (bd.b.b7) a += '1'; else a += '0';
   if (bd.b.b6) a += '1'; else a += '0';
   if (bd.b.b5) a += '1'; else a += '0';
   if (bd.b.b4) a += '1'; else a += '0';
   if (bd.b.b3) a += '1'; else a += '0';
   if (bd.b.b2) a += '1'; else a += '0';
   if (bd.b.b1) a += '1'; else a += '0';

   pDC -> TextOut (gg, gh, a);
   gh += 25;
   return 0;
}

_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
jura_k



Пол: Пол:Муж
Возраст: 48
Постоянный гость
Рега: 02.02.2013
Сообщения: 432

СообщениеДобавлено: Вс Мар 24, 2019 2:20 pm    Заголовок сообщения: Ответить с цитатой

Ну что, за три месяца никто ничего не придумал и не опубликовал на форуме? Ну вот вам от меня продолжение.
Изучение ООП.
Код:
/*   p25
     Язык Borland C++ 3.1
     Visual C++ 6.0 - учебный курс
     Начальный курс C и C++   */

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


int j = 100;   //   Глобальная переменная

long ee (int);
float ee (float);
float ee (long);


//   (1) Класс DataClass

class cc
{
private:
   int pri;   //   PrivateDataMember

public:
   cc (int);     //   конструктор класса
   int pub;      //   PublicDataMember
   int met ();   //   PublicMethod ();
};


//   (2) Класс SchoolClass

class cd
{
   int *data;   //   ClassData, перечень оценок
   int index;   //   ClassDataIndex, номер обрабатываемой оценки

public:
   cd (int);   //   конструктор класса
   ~cd ();     //   деструктор класса

   void add (int);     //   AddScore ();
   int get (int);      //   GetScore ();
   float average ();   //   AverageScore ();
};


//   (3) Класс vehicle

class ce
{
public:
   void start ();
   void move ();
};


//   (4) Класс helicopter

class cf:public ce
{
public:
   void move ();
};


//   (5) Класс DisplayClass

class cg
{
public:
   void display (char);
   void display (char *);
};


//   (6) Класс "очередь" queue
class ch
{
   int queue [10];   //   Данные класса "очередь" q [10]
   int begin;        //   Адрес начала очереди rloc
   int end;          //   Адрес конца очереди sloc

public:
   void initialization ();     //   Инициализация очереди init ();
   void put (int);   //   Добавление данных в очередь qput ();
   int get ();       //   Извлечение данных из очереди qget ();
};


//   ********** (1) Методы DataClass **********

cc::cc (int a) {pri = a;}

int cc::met () {return pri;}


//   (2) Методы SchoolClass

cd::cd (int a)
{
   data = new int [a];
   index = 0;
}

cd::~cd () {delete data;}

void cd::add (int a) {data [index++] = a;}

int cd::get (int a)
{
   if (a < index) return data [a]; else return -1;
}

float cd::average ()
{
   float a;
   int d;

   a = 0;
   if (index < 1) return -1;
   for (d = 0; d < index; d++)
         a += data [d];

   return a / index;
}


//   (3) Методы класса vehicle

void ce::start () {cout << "1 - Стартую...\n";}
void ce::move () {cout << "2 - Двигаюсь...\n";}


//   (4) Методы класса helicopter

void cf::move () {cout << "3 - Лечу...\n";}


//   (5) Методы класса DisplayClass

void cg::display (char a) {cout << a;}
void cg::display (char *a) {cout << a;}


//   (6) Методы класса queue

void ch::initialization ()
{
   begin = end = 0;
}

void ch::put (int a)
{
   if (end == 10)
   {
      cout << "Очередь полна.\n";
      return;
   }

   queue [end++] = a;
}

ch::get ()
{
   if (begin == end)
   {
      cout << "Очередь пуста.\n";
      return 0;
   }

   return queue [begin++];
}



//   ********** Функция main (); **********

main ()
{
   //   Объявления объектов
   cc dd (1);    //   DataObject
   cd de (9);    //   HistoryClass
   cd df (10);   //   EnglishClass
   cf dg;        //   Helicopter Whirly
   cg dh;        //   DisplayClass DisplayObject
   ch di, dj, dk;   //   Очередь queue

   int a;
   char d [80];
   float g;
   int j = 5;    //   Локальная переменная
   long m;
   unsigned p;


   //   p25 - 1
   cout << "1. Добро пожаловать в C++.\n";


   //   p37 - 2
   dd.pub = 2;
   cout << "2. DataObject.PublicDataMember = " << dd.pub << ".\n";
   cout << "DataObject.PrivateDataMember = " << dd.met () << ".\n";


   //   p46 - 3
   de.add (80); de.add (81); de.add (82); de.add (83); de.add (84);
   de.add (85); de.add (86); de.add (87); de.add (88);

   df.add (91); df.add (92); df.add (93); df.add (94); df.add (95);
   df.add (96); df.add (97); df.add (98); df.add (99); df.add (100);

   cout << "3. Средний балл по истории: " << de.average () << ".\n";
   cout << "Средний балл по английскому: " << df.average () << ".\n";


   //   p53 - 4
   cout << "4. ";
   dg.start ();
   dg.move ();


   //   p56 - 5
   cout << "5. ";
   dh.display ('h');
   dh.display ("i");
   cout << "\n";


   //   p164 - 6
   cout << "6. C++ - хороший язык.\n";
   printf ("Можно использовать функцию printf ().\n");
   cout << "Введите число: ";
   cin >> a;
   cout << "Вы ввели число " << a << ".\n";
   cout << "Введите строку: ";
   cin >> d;
   cout << d << ".\n";
   g = 1.2345;
   cout << "Переменная типа float g = " << g << ".\n";


   //   p166 - 7
   cout << "7. Локальная переменная: " << j << ".\n";
   cout << "Глобальная переменная: " << ::j << ".\n";


   //   p170 - 8
   di.initialization ();
   dj.initialization ();
   dk.initialization ();

   di.put (7);
   di.put (9);
   di.put (11);

   dj.put (8);
   dj.put (10);
   dj.put (12);

   cout << "8. " << di.get () << " ";
   cout << di.get () << " ";
   cout << di.get () << " ";
   cout << di.get () << ".\n";

   cout << dj.get () << " " << dj.get () << " " << dj.get () << " "
   << dj.get () << ".\n";

   for (a = 0; a < 12; a++)
      dk.put (a * a);

   for (a = 0; a < 12; a++)
      cout << dk.get () << " ";


   //   p171 - 9
   a = 7;
   g = 1.1;
   m = 20;

   cout << "\n9. ";
   cout << ee (a) << ".\n";
   cout << ee (g) << ".\n";
   cout << ee (m) << "...\n";

   cout << ee (10) << ".\n";
   cout << ee ((float) 10.1) << ".\n";
   cout << ee (70000) << "...\n";

   cout << ee (10l) << ".\n";
   p = 4;
   cout << ee ((int) p) << ".\n";
   cout << ee ((int) 8u) << ".\n";


   getch ();
   cout << "\n";
   return 0;
}


long ee (int a)
{
   cout << "Функция использует целый аргумент ";
   return (long) a * a;
}

float ee (float a)
{
   cout << "Функция использует вещественный аргумент ";
   return a * a;
}

float ee (long a)
{
   cout << "Функция использует аргумент типа \"long\" ";
   return (float) a * a;
}


Добавлено спустя 1 минуту 52 секунды:


_________________
Чем закрыть рекламу: http://amvnews.ru/forum/viewtopic.php?t=4025
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов AMV News -> Креатив Часовой пояс: GMT + 3
На страницу Пред.  1, 2
Страница 2 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете добавлять приложения в этом форуме
Вы не можете скачивать файлы в этом форуме