0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
1

Построить систему силовых линий Е (где ошибка в коде?)

28.12.2014, 16:54. Показов 1336. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите, в чем ошибка?
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
SCREEN 12
pi = 3.141593: nu0 = .0000001 * 4 * pi
K = nu0 / (4 * pi)
kollin = 10
LINE (0, 240)-(639, 240), 12
LINE (320, 0)-(320, 479), 12
 
X1 = 260: Y1 = 240: X2 = 380: Y2 = 240: X3 = 320: Y3 = 240
CIRCLE (X1, Y1), 5, 2
CIRCLE (X2, Y2), 5, 2
CIRCLE (X3, Y3), 10, 3
I1 = -1: I2 = -1: I3 = 2
RANDOMIZE TIMER
FOR i = 1 TO kollin
n = 0
x = INT(RND(1) * 400 + 120): y = INT(RND(1) * 320 + 80)
1 n = n + 1
r1 = SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
r2 = SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
r3 = SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
B1 = K * I1 / r1: cosa1 = (x - X1) / r1: sina1 = (y - Y1) / r1
B2 = K * I2 / r2: cosa2 = (x - X2) / r2: sina2 = (y - Y2) / r2
B3 = K * I3 / r3: cosa3 = (x - X3) / r3: sina3 = (y - Y3) / r3
Bx = B1 * sina1 + B2 * sina2 + B3 * sina3
By = B1 * cosa1 + B2 * cosa2 + B3 * cosa3
B = SQR(Bx ^ 2 + By ^ 2)
x = x + .1 * Bx / B: y = y - .1 * By / B
PSET (INT(x), INT(y)), 7
FOR k1 = 1 TO 1: NEXT
IF n < 17000 GOTO 1
NEXT i
END
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)  
Вложения
Тип файла: txt prog.txt (965 байт, 4 просмотров)
0
28.12.2014, 16:54
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.12.2014, 16:54
Ответы с готовыми решениями:

Как построить картину силовых линий поля диполя
Помогите пожалуйста построить в mathcad картину силовых линий поля диполя?

Построить картину силовых линий и эквипотенциальных поверхностей на плоскости для системы точечных зарядов
Нужно построить картину силовых линий и эквипотенциальных поверхностей на плоскости для системы точечных зарядов. Строили силовые...

Построение силовых линий
Векторное поле представлено двумерным массивом, каждый элемент которого хранит значение поля в некоторой точке на плоскости, причём, каждая...

14
 Аватар для vodav
572 / 141 / 37
Регистрация: 12.03.2012
Сообщений: 403
28.12.2014, 19:22 2
Если поправить, то
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
SCREEN 12
pi = 3.141593: nu0 = .0000001 * 4 * pi
K = nu0 / (4 * pi)
kollin = 10
LINE (0, 240)-(639, 240), 12
LINE (320, 0)-(320, 479), 12
 
X1 = 260: Y1 = 240: X2 = 380: Y2 = 240: X3 = 320: Y3 = 240
CIRCLE (X1, Y1), 5, 2
CIRCLE (X2, Y2), 5, 2
CIRCLE (X3, Y3), 10, 3
I1 = -1: I2 = -1: I3 = 2
RANDOMIZE TIMER
FOR i = 1 TO kollin
    n = 0
    x = INT(RND(1) * 400 + 120): y = INT(RND(1) * 320 + 80)
    1: n = n + 1
    r1 = SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
    r2 = SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
    r3 = SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
    B1 = K * I1 / r1: cosa1 = (x - X1) / r1: sina1 = (y - Y1) / r1
    B2 = K * I2 / r2: cosa2 = (x - X2) / r2: sina2 = (y - Y2) / r2
    B3 = K * I3 / r3: cosa3 = (x - X3) / r3: sina3 = (y - Y3) / r3
    Bx = B1 * sina1 + B2 * sina2 + B3 * sina3
    By = B1 * cosa1 + B2 * cosa2 + B3 * cosa3
    B = SQR(Bx ^ 2 + By ^ 2)
    x = x + .1 * Bx / B: y = y - .1 * By / B
    PSET (INT(x), INT(y)), 7
    FOR k1 = 1 TO 1: NEXT k1
    IF n < 17000 GOTO 1
NEXT i
END
получится картинка
исправления в 17 29 строках
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)  
1
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
29.12.2014, 01:12  [ТС] 3
нет, не так должно быть именно в виде "бесконечности".
проходя через каждый заряд
увы друг (
0
 Аватар для vodav
572 / 141 / 37
Регистрация: 12.03.2012
Сообщений: 403
29.12.2014, 05:53 4
Тогда надо пересматривать расчетные формулы. Здесь я не силен, приведите хотя бы базовые формулы по которым надо рисовать эти графики.
0
Кормпилятор
 Аватар для Quiet Snow
5038 / 1710 / 409
Регистрация: 25.04.2010
Сообщений: 4,801
Записей в блоге: 2
29.12.2014, 09:28 5
Не знаю насколько могу помочь, не физик. Но из кода кое что выжать можно))).
Методом научного тыка...
Если б не vodav со скрином, то даже не полез бы.
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
DIM B AS INTEGER
 
SCREEN 12
 
X1 = 260: Y1 = 240
X2 = 380: Y2 = 240
X3 = 320: Y3 = 240
 
I1 = -1: I2 = -1: I3 = 2   '  Сила заряда  да/нет?
 
'   Первый проход по вертикали
FOR py = 0 TO 479
   FOR px = 0 TO 639
      x = px: y = py
      r1 = 1 / SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
      r2 = 1 / SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
      r3 = 1 / SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
     
      B1 = I1 * r1: Cosa1 = (x - X1) * r1: Sina1 = (y - Y1) * r1
      B2 = I2 * r2: Cosa2 = (x - X2) * r2: Sina2 = (y - Y2) * r2
      B3 = I2 * r2: Cosa3 = (x - X3) * r3: Sina3 = (y - Y3) * r3
 
      Bx = B1 * Sina1 + B2 * Sina2 + B3 * Sina3
      By = B1 * Cosa1 + B2 * Cosa2 + B3 * Cosa3
 
      B = INT(SQR(Bx * Bx + By * By) * 1000)
 
      IF B <> Bo THEN PSET (x, y), 7
      Bo = B
   NEXT
   PSET (0, y), 15
   IF INKEY$ <> "" THEN END
NEXT
 
'   Второй проход по горизонтали (дополняет)
FOR px = 0 TO 639
 
   FOR py = 0 TO 479
      x = px: y = py
      r1 = 1 / SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
      r2 = 1 / SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
      r3 = 1 / SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
    
      B1 = I1 * r1: Cosa1 = (x - X1) * r1: Sina1 = (y - Y1) * r1
      B2 = I2 * r2: Cosa2 = (x - X2) * r2: Sina2 = (y - Y2) * r2
      B3 = I2 * r2: Cosa3 = (x - X3) * r3: Sina3 = (y - Y3) * r3
 
      Bx = B1 * Sina1 + B2 * Sina2 + B3 * Sina3
      By = B1 * Cosa1 + B2 * Cosa2 + B3 * Cosa3
 
      B = INT(SQR(Bx * Bx + By * By) * 1000)
 
      IF B <> Bo THEN PSET (x, y), 7
      Bo = B
   NEXT
   PSET (0, y), 15
   IF INKEY$ <> "" THEN END
NEXT
Построить систему силовых линий Е (где ошибка в коде?)
0
Кормпилятор
 Аватар для Quiet Snow
5038 / 1710 / 409
Регистрация: 25.04.2010
Сообщений: 4,801
Записей в блоге: 2
29.12.2014, 09:59 6
Если заменить в 26 и 51 строке на:
QBasic/QuickBASIC
1
B = INT(LOG(SQR(SQR(Bx * Bx + By * By)) * 100) * 10)
То будет чуточку красивее:

Построить систему силовых линий Е (где ошибка в коде?)
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
17.03.2015, 20:16  [ТС] 7
Есть пример программы, но здесь где то нужно пару строчек поменять (но смысл тот же)
должен получиться рисунок в виде бесконечности на координатной оси х,у.
Вот рисунок задан, и ка должен получиться.
ребят выручите пожалуйста.

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
SCREEN 12
pi = 3.141593: nu0 = .0000001 * 4 * pi
K = nu0 / (4 * pi)
kollin = 10
LINE (0, 240)-(639, 240), 12
LINE (320, 0)-(320, 479), 12
 
X1 = 260: Y1 = 240: X2 = 380: Y2 = 240: X3 = 320: Y3 = 240
CIRCLE (X1, Y1), 5, 2
CIRCLE (X2, Y2), 5, 2
CIRCLE (X3, Y3), 10, 3
I1 = -1: I2 = -1: I3 = 2
RANDOMIZE TIMER
FOR i = 1 TO kollin
n = 0
x = INT(RND(1) * 400 + 120): y = INT(RND(1) * 320 + 80)
1 n = n + 1
r1 = SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
r2 = SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
r3 = SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
B1 = K * I1 / r1: cosa1 = (x - X1) / r1: sina1 = (y - Y1) / r1
B2 = K * I2 / r2: cosa2 = (x - X2) / r2: sina2 = (y - Y2) / r2
B3 = K * I3 / r3: cosa3 = (x - X3) / r3: sina3 = (y - Y3) / r3
Bx = B1 * sina1 + B2 * sina2 + B3 * sina3
By = B1 * cosa1 + B2 * cosa2 + B3 * cosa3
B = SQR(Bx ^ 2 + By ^ 2)
x = x + .1 * Bx / B: y = y - .1 * By / B
PSET (INT(x), INT(y)), 7
FOR k1 = 1 TO 1: NEXT
IF n < 17000 GOTO 1
NEXT i
END
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
17.03.2015, 20:25  [ТС] 8
вот картинка как должно быть!
вверхняя то что задано.
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)  
0
 Аватар для Pro_grammer
6807 / 2837 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
18.03.2015, 06:48 9
А решения выше чем не устраивают?
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
18.03.2015, 14:12  [ТС] 10
НЕ верно, должно быть так, но одна линия
чтобы все слитно было.
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)  
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
18.03.2015, 15:37  [ТС] 11
примерно вот так должно быть
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)  
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
18.03.2015, 16:56  [ТС] 12
на белой картинке, вс что дано.
нужно составить в виде бесконечности (2 фотка, примерно так)

помогите пожалуйста!
QBasic/QuickBASIC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
SCREEN 12
pi = 3.141593: nu0 = .0000001 * 4 * pi
K = nu0 / (4 * pi)
kollin = 10
LINE (0, 240)-(639, 240), 12
LINE (320, 0)-(320, 479), 12
 
X1 = 260: Y1 = 240: X2 = 380: Y2 = 240: X3 = 320: Y3 = 240
CIRCLE (X1, Y1), 5, 2
CIRCLE (X2, Y2), 5, 2
CIRCLE (X3, Y3), 10, 3
I1 = -1: I2 = -1: I3 = 2
RANDOMIZE TIMER
FOR i = 1 TO kollin
n = 0
x = INT(RND(1) * 400 + 120): y = INT(RND(1) * 320 + 80)
1 n = n + 1
r1 = SQR((x - X1) ^ 2 + (y - Y1) ^ 2)
r2 = SQR((x - X2) ^ 2 + (y - Y2) ^ 2)
r3 = SQR((x - X3) ^ 2 + (y - Y3) ^ 2)
B1 = K * I1 / r1: cosa1 = (x - X1) / r1: sina1 = (y - Y1) / r1
B2 = K * I2 / r2: cosa2 = (x - X2) / r2: sina2 = (y - Y2) / r2
B3 = K * I3 / r3: cosa3 = (x - X3) / r3: sina3 = (y - Y3) / r3
Bx = B1 * sina1 + B2 * sina2 + B3 * sina3
By = B1 * cosa1 + B2 * cosa2 + B3 * cosa3
B = SQR(Bx ^ 2 + By ^ 2)
x = x + .1 * Bx / B: y = y - .1 * By / B
PSET (INT(x), INT(y)), 7
FOR k1 = 1 TO 1: NEXT
IF n < 17000 GOTO 1
NEXT i
END
Миниатюры
Построить систему силовых линий Е (где ошибка в коде?)   Построить систему силовых линий Е (где ошибка в коде?)  
0
Кормпилятор
 Аватар для Quiet Snow
5038 / 1710 / 409
Регистрация: 25.04.2010
Сообщений: 4,801
Записей в блоге: 2
20.03.2015, 23:11 13
помогите пожалуйста!
В 4-м посте человек вам написал, что нужны рассчётные формулы. По коду - вообще фиг его знает,
что надо править и как. Заранее говорю - википедию совать тоже не надо, тут программисты, а не
физики. Будут рабочие формулы с описанием, будет прога.
0
 Аватар для Pro_grammer
6807 / 2837 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
21.03.2015, 06:22 14
Цитата Сообщение от sinx_cosx Посмотреть сообщение
Есть пример программы, но здесь где то нужно пару строчек поменять (но смысл тот же)
должен получиться рисунок в виде бесконечности на координатной оси х,у.
Вот рисунок задан, и ка должен получиться.
ребят выручите пожалуйста.
Судя по рисунку "как должен получиться" там всего 2 синусоиды в разных фазах. Откуда у вас это код, и почему вы решили, что там всего 2 строчки надо поменять? Может просто выкинуть все расчеты и нарисовать эти синусоиды?
0
0 / 0 / 0
Регистрация: 28.12.2014
Сообщений: 8
01.04.2015, 08:55  [ТС] 15
да, да
вринципе можно
но у меня не получается.
можешь помочь?
0
01.04.2015, 08:55
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2015, 08:55
Помогаю со студенческими работами здесь

Определить направление силовых линий
Здравствуйте! Такой вот текст задачи: Определите направление силовых линий с помощью формулы \vec{E}=-\left(\frac{d\varphi }{dx}\vec{i}...

Вид силовых линий и эквипотенциалий по 3 условиям
Имееться рисунок ниже.1-тело диэлектрик и в нем 2-тело,между обкладками подается напряжение.На рисунке так же ниже указаны условия(т.е 3...

В чем писать модель электромагнитных силовых линий в волноводе?
задали построить модель электромагнитных силовых линий в волноводе. беда!!! подскажите в чем лучше написать ее?? + надо чтобы все было...

Направление силовых линий магнитного поля в зазоре электромагнита.
Как определить направление силовых линий магнитного поля в зазоре электромагнита ?

Рисование рандомных линий: ошибка в коде
Создал проект замутил скрипт но чето он не хочет рисовать рандомные линии,вылазит ошибка но че то не могу понять почему или я чето забыл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Ошибка Docker "Got permission denied while trying to connect to the Docker daemon socket at"
hw_wired 14.02.2025
Разработка с использованием Docker может иногда преподносить неожиданные сюрпризы, и одним из самых распространенных камней преткновения становится ошибка с отказом в доступе к демону Docker. . . .
Ошибка "No 'Access-Control-Allow-Origin' header is present on the requested resource"
hw_wired 14.02.2025
При разработке современных веб-приложений нередко сталкиваешься с ошибкой "No 'Access-Control-Allow-Origin' header is present on the requested resource". Эта проблема возникает из-за политики. . .
Как закрыть порт в Linux
hw_wired 14.02.2025
Управление сетевыми портами в Linux - непростая, но важная задача для обеспечения безопасности системы. Каждый открытый порт - это потенциальная уязвимость, через которую злоумышленики могут. . .
Ошибка Angular "Can't bind to 'taskForm' since it isn't a known property of 'form'"
hw_wired 14.02.2025
При разработке веб-приложений на Angular можно столкнуться с ошибкой "Can't bind to '' since it isn't a known property of 'form'". Эта ошибка появляется в консоли браузера когда мы пытаемся. . .
Сообщение Git "Pulling without specifying how to reconcile divergent branches is discouraged"
hw_wired 14.02.2025
При работе с системой контроля версий Git многие разработчики сталкиваются с предупреждающим сообщением "Pulling without specifying how to reconcile divergent branches is discouraged". Это. . .
Как настроить количество пробелов в отступах табов в Visual Studio Code
hw_wired 14.02.2025
Visual Studio Code предоставляет несколько гибких способов настройки табуляции, каждый из которых имеет свои преимущества. Самый простой и наглядный метод - через графический интерфейс настроек, где. . .
Что означает знак восклицания в TypeScript
hw_wired 14.02.2025
TypeScript - удивительный язык программирования, который предоставляет множество возможностей для работы с типами данных. Особый интерес вызывает оператор утверждения ненулевого значения, который. . .
Как свернуть/скрыть секции кода в Visual Studio Code
hw_wired 14.02.2025
Ежедневно мы работам с файлами, содержащими сотни и тысячи строк кода. Навигация по такому объему становится настоящим испытанием, особенно когда нужно быстро найти нужный метод или переменную. . . .
Автоматическое создание файла requirements.tx­t в Python
hw_wired 14.02.2025
Дружелюбная среда для разработки на Python, один из самых широко используемых языков программирования, состоит не только из самого кода, но и целого ряда важных компонентов. И если вы когда-нибудь. . .
Передача переменных окружения в контейнер Docker
hw_wired 14.02.2025
При работе с Docker контейнерами возникает необходимость передать различные настройки и конфигурационные параметры - от строк подключения к базам данных до API ключей. И хотя можно жестко прописать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru