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

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

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.09.2018, 14:46   #111
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

Написал недавно программку.
Вычисляет расстояние от Москвы до Анадыри по географическим координатам.
Это максимум, что я достиг.
Когда писал, думал, что что-то программировать надо только в свое удовольствие и только то, что интересно и плевать на то, что пишут на форумах, так как на форумах ничему не научат, а только унизят и оскорбят и обольют дерьмом...


Код:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

#define PI 3.1416

int main()
{
double a = 65.0;
double b;
double c;

double r = 6378.1;
//double t1 = 65.0;
//double f1 = 178.0;

//double t2 = 56.0;
//double f2 = 38.0;

double t1 = 25.0;
double f1 = 177.0;

double t2 = 34.0;
double f2 = 37.0;

double t11 = (t1 * PI)/180;
double f11 = (f1 * PI)/180;

double t21 = (t2 * PI)/180;
double f21 = (f2 * PI)/180;

double x1, y1, z1;
double x2, y2, z2;

x1 = r * sin(t11) * cos(f11);
y1 = r * sin(t11) * sin(f11);
z1 = r * cos(t11);

x2 = r * sin(t21) * cos(f21);
y2 = r * sin(t21) * sin(f21);
z2 = r * cos(f21);

double dx, dy, dz;

dx = x2 - x1;
dy = y2 - y1;
dz = z2 - z1;

double dx2, dy2, dz2;


dx2 = dx * dx;
dy2 = dy * dy;
dz2 = dz * dz;

double rs;

rs = sqrt (dx2+dy2+dz2);


b = (a * PI)/180;
c = sin(b);


printf("%f\n", rs);


fgetc(stdin);


}
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.09.2018, 14:51   #112
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

1. А зачем вам a,b,c? Вы их фактически нигде не используете и не выводите.
2. Что за мода в последнее время на форуме дефайнить свое ПИ? Что за учебник это советует?
p51x вне форума Ответить с цитированием
Старый 14.09.2018, 15:20   #113
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,529
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
2. Что за мода в последнее время на форуме дефайнить свое ПИ? Что за учебник это советует?
А где его взять?
Цитата:
Сообщение от challengerr Посмотреть сообщение
что пишут на форумах, так как на форумах ничему не научат, а только унизят и оскорбят и обольют дерьмом...
А что, на других форумах точно так же, как на этом?

Насчёт программы. Читать не стал. О, сферические координаты...
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...

Последний раз редактировалось jura_k; 14.09.2018 в 15:22.
jura_k вне форума Ответить с цитированием
Старый 14.09.2018, 15:23   #114
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

https://docs.microsoft.com/en-us/cpp...s?view=vs-2017
http://www.gnu.org/software/libc/man...Constants.html
p51x вне форума Ответить с цитированием
Старый 14.09.2018, 15:24   #115
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А зачем вам a,b,c? Вы их фактически нигде не используете и не выводите.
Никак не могу запомнить перевод из градусов в радианы. Написал и тут же забыл, а потом снова надо искать в гугле формулу. И так каждый раз...
a - угол в градусах
b - значение этого угла в радианах
c - вычисление синуса этого угла, заданного в радианах.
Засомневался, правильно ли вычисляется синус.

Цитата:
Сообщение от p51x Посмотреть сообщение
2. Что за мода в последнее время на форуме дефайнить свое ПИ? Что за учебник это советует?
Компилировал в Visual C++ какой-то проект с использованием PI, и компилятор выдавал ошибку, что константа не определена в заголовочных файлах IDE, с тех пор стал задавать PI вручную. Посмотрел стандарт C99, по стандарту эта константа не определена и ее требуется задавать или вычислять вручную. Как вычислять вручную, не разбирался.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.09.2018, 15:38   #116
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

В math.h эта константа не определена. Проверил эмпирически на компиляции M_PI. Компиляция в gcc/codeblocks удалась. Перепроверил, не обнаружил, в каком заголовчном файле задана константа.
На stackoverflow в одном из комментариев написано:
Not quite -- in fact a conforming C implementation may not define PI in <math.h>. POSIX specifies M_PI, but again, a conforming C implementation may not define it. (POSIX imposes some requirements that conflict with the C standard.) But you can define it that way in your own program. – Keith Thompson Mar 28 '12 at 16:53 ( stackoverflow.com/questions/9912151/math-constant-pi-value-in-c)

GCC 4.8.1 (MinGW) apparently does not define M_PI or PI. – Arcane Engineer Dec 18 '14 at 13:46
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.09.2018, 15:54   #117
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
Сообщение от challengerr Посмотреть сообщение
Проверил эмпирически на компиляции M_PI.
Какой компилятор?

Цитата:
Сообщение от challengerr Посмотреть сообщение
Компиляция в gcc/codeblocks удалась.
Так удалась или неопределена?

Цитата:
Сообщение от challengerr Посмотреть сообщение
Перепроверил, не обнаружил, в каком заголовчном файле задана константа.
http://www.gnu.org/software/libc/man...ical-Constants
Цитата:
The header math.h defines several useful mathematical constants. All values are defined as preprocessor macros starting with M_.
Цитата:
Сообщение от challengerr Посмотреть сообщение
На stackoverflow в одном из комментариев написано
А кто-то утверждал обратное?

Цитата:
Сообщение от challengerr Посмотреть сообщение
GCC 4.8.1 (MinGW) apparently does not define M_PI or PI.
Ничего, что там версии 8.2 уже в ходу...
p51x вне форума Ответить с цитированием
Старый 14.09.2018, 16:00   #118
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Кстати, скачал только что math.h из MinGW:
Код:
#if _POSIX_C_SOURCE || defined _USE_MATH_DEFINES
/* Traditional/XOPEN math constants (double precison).  MSVC makes these
 * available, only if _USE_MATH_DEFINES is specified; POSIX does so also,
 * when _POSIX_C_SOURCE is defined and non-zero, (as will be the case by
 * default in MinGW, unless __STRICT_ANSI__ checking is in effect).
 */
#define M_E		2.7182818284590452354
#define M_LOG2E 	1.4426950408889634074
#define M_LOG10E	0.43429448190325182765
#define M_LN2		0.69314718055994530942
#define M_LN10		2.30258509299404568402
#define M_PI		3.14159265358979323846
#define M_PI_2		1.57079632679489661923
#define M_PI_4		0.78539816339744830962
#define M_1_PI		0.31830988618379067154
#define M_2_PI		0.63661977236758134308
#define M_2_SQRTPI	1.12837916709551257390
#define M_SQRT2 	1.41421356237309504880
#define M_SQRT1_2	0.70710678118654752440
#endif
p51x вне форума Ответить с цитированием
Старый 14.09.2018, 16:29   #119
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

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


16 лет назад кричали, что freebsd это круто. Оказалось, что программированием нужно заниматься, если есть какие-то мелкие задачки, которые хочется сделать, но на что-то большее типа работы, высокой заработной платы, больших успехов рассчитывать не стоит, так как этого никогда не будет и вы никогда не поднимете свой уровень знания до уровня промышленного программирования, даже если начнете читать учебники, самоучители, документацию, и в вас не поверят. Найдут специалиста, у которого опыт работы более 5-10 лет. После выпуска из ВУЗа возникает вопрос, а где такой опыт брать, впервые устраивась на работу? На работе надо будет делать очень быстро и в кратчайшие сроки то, что не хочется, не нравится и то, что не знаешь и постоянно надо разбираться в новом, и тут нужно понимать свои способности.. В итоге на данный момент я пришел к выводу, что программировать надо только то, что нравится.

Когда я учился в школе, у меня компьютера не было, и я ничего не понимал в языке Pascal, который изучается в 10 классе на уроках информатики и в VBA, который изучается в 11 классе. 17 лет назад, в 2001 я разговаривал с другом на тему программирования. Он предложил сделать органаайзер на VB6. И я начал читать документацию по VB6, разбираться, как программировать на VB6, только так и не понял, а что, собственное говоря, такое органайзер, и как его можно сделать. Так и не сделал. Для меня было невдомек, что такое .dat файл, и что такое двусвязные списки и контейнеры. То есть изначально шансов никаких не было, так как это нужно было знать еще тогда. Потом появился VB.NET, и я изучил VB.NET, VBSE, ASP, только в фирмах они не где не требуются. На основе собеседований: требуются в основном 1С-ники с готовыми проектами и опытом от 3 лет или программисты микроконтроллеров для энергетики, машиностроения на ассемблере. И при этом с этим надо разбирать не имея документации, undocumented.

На форум приходят и спрашивают, с чего начать программировать, и мне постоянно хочется отвечать, что начинать программировать не стоит, так как это очень трудно, скучно, нужно и никакой выгоды от этого не будет.


Цитата:
Какой компилятор?
gcc 4.2.1 (freebsd). Компиляция удалась, но константа определена не в math.h.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.09.2018, 19:24   #120
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,529
По умолчанию

Цитата:
Сообщение от challengerr Посмотреть сообщение
гугле формулу.
Зачем тебе Гугл? 180 градусов - это "пи", развёрнутый угол. Делишь 180 на "пи" и получаешь один радиан.

p51x -> Всё равно её буду вводить. Когда нужно. Приятно что-то делать руками. Например, дом строить...
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...

Последний раз редактировалось jura_k; 14.09.2018 в 19:27.
jura_k вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что учить? Vad1m198 Свободное общение 2 12.09.2012 20:16
Что учить? jojo97 Помощь студентам 48 11.03.2011 16:48
что учить? veter48 Свободное общение 11 05.08.2010 00:38
Что учить... beskon Свободное общение 7 17.09.2008 20:54