Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65

Присваивание значения полю записи

13.08.2018, 20:40. Показов 3410. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Я перевожу код своего решения одной задачи с Си на Java.
Вот начало:
C
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
#include <stdlib.h>
#include <stdio.h>
 
typedef struct {
    int n, d;
} DST;
 
typedef struct {
    int X, Y, o, d;
    DST *dst;
} ZNS;
 
int main(void)
{
    typedef struct {
        int X, Y;
    } Drone;
 
    int ID;                     // ID of your player (0, 1, 2, or 3)
    int D;                      // number of drones in each team (3 to 11)
    int Z;                      // number of zones on the map (4 to 8)
    ZNS *zns;
    Drone *drone;
    int P;                      // number of players in the game (2 to 4 players)
    scanf("%d%d%d%d", &P, &ID, &D, &Z); // 2 1 3 1 150 150 -1 0 0 0 0 0 0 0 0 0 0 0 0
    zns = malloc(Z * sizeof(ZNS));
    drone = malloc(D * sizeof(Drone));
    for (int i = 0; i < Z; i++) {
        // corresponds to the position of the center of a zone. A zone is a circle with a radius of 100
        //units.
        scanf("%d%d", &zns[i].X, &zns[i].Y);
        zns[i].d = 0;
        zns[i].dst = malloc(D);
    }
 
    // game loop
    while (1) {
Переведённый:
Java
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
59
60
61
62
63
64
65
66
67
package game.of.drones;
 
import java.util.Scanner;
import java.util.logging.Logger;
 
public class GameOfDrones {
 
    private static final Logger LOG = Logger.getLogger(GameOfDrones.class.getName());
 
    public static void main(String[] args) {
        int ID, D, Z;
        Scanner scanner = new Scanner(System.in);
        ZNS[] zns;
        Drone[] drone;
        int P;
        P = scanner.nextInt();
        ID = scanner.nextInt();
        D = scanner.nextInt();
        Z = scanner.nextInt();
        zns = new ZNS[Z];
        drone = new Drone[D];
        for (int i = 0; i < Z; i++) {
            // System.out.println(zns[i].X);
            zns[i].X = scanner.nextInt();
            zns[i].Y = scanner.nextInt();
            zns[i].d = 0;
            zns[i].dst = new DST[D];
        }
        // game loop
        while (true) {
            break; // просто while с выходом; будет заменено
        }
    }
 
    public class DST {
 
        public int n, d;
 
        public DST(int n, int d) {
            this.n = n;
            this.d = d;
        }
    }
 
    public class ZNS {
 
        public int X, Y, o, d;
        public DST[] dst;
 
        public ZNS(int X, int Y, int o, int d) {
            this.X = X;
            this.Y = Y;
            this.o = o;
            this.d = d;
        }
    }
 
    public class Drone {
 
        public int X, Y;
 
        public Drone(int X, int Y) {
            this.X = Y;
            this.Y = Y;
        }
    }
}
При выполнении
Java
1
zns[i].X = scanner.nextInt();
выдаёт NullPointerException. Почему?
Я думал,
Java
1
zns = new ZNS[Z];
означает "создать массив объектов ZNS длиной Z (и выделить им память, разумеется)", но этого не происходит.
Заранее извините, если мой вопрос покажется глупым, объясните мне, пожалуйста.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.08.2018, 20:40
Ответы с готовыми решениями:

Удаление из массива и присваивание значения удаляемого элемента переменной
Имеется следующий блок кода: public static class Note { public static final List&lt;String&gt; notes = new...

Присваивание значения переменной значения выбранного в ComboBox
Подскажите пожалуйста, как можно организовать следующую операцию. Есть список наименований ламп накаливания записанный в ComboBox,...

Расчет общей суммы по полю запроса и доли значения каждой записи от общей суммы
Здравствуйте. В БД на аксесс 2013 есть запрос который выводит следующие данные: за выбранный период по договорам с заказчиками выводится...

35
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 09:26  [ТС]
Студворк — интернет-сервис помощи студентам
Aviz__, за удержание зоны мы получаем очки. Если на момент окончания хода зона под контролем игрока, он получает одно очко (к примеру, контролируя две зоны, я получу +2 к своему счёту). Цель — набрать больше, чем все другие враги за 100 ходов, если правильно помню. Альтернативное условие победы: набрать 250 очков.
Могу ссылку дать, там сайт целый.
0
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
14.08.2018, 09:29
Цитата Сообщение от iwttvod Посмотреть сообщение
alexjun, новый алгоритм решения даже не начну изобретать
Очень зря.
Неблагодарное занятие.
Я давным давно начинал с Си. Чуть чуть его помню.

Абсолютно разные подходы, принципы программирования. Зачем тогда переводить на джаву?
Сохранив концепцию си - в дальнейшем поймете, какие проблемы нарисуются.
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 09:31  [ТС]
alexjun, вместо struct будет class, только и всего.
0
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
14.08.2018, 09:37
Цитата Сообщение от iwttvod Посмотреть сообщение
alexjun, вместо struct будет class, только и всего.
Ой, уважаемый... Знали бы вы на сколько вы ошибаетесь...
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 09:41  [ТС]
alexjun, считаю, можно пока этим голову не забивать, в университете научат.
Это так, исключительно для себя. Позже на JS продолжу или на C#, а то и вовсе на Haskell.
0
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
14.08.2018, 09:55
Цитата Сообщение от iwttvod Посмотреть сообщение
alexjun, считаю, можно пока этим голову не забивать, в университете научат.

Не по теме:

Жизнь ваша! Но именно разница между процедурным и ооп - основа основ. А вы не будете голову этим забивать...

0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
14.08.2018, 10:06
Цитата Сообщение от iwttvod Посмотреть сообщение
в университете научат

Не по теме:

скорее всего, с таким подходом, ты не дойдешь до диплома...


давай ссылку, глянем. так, тебе с GUI нужно?
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 10:20  [ТС]
Aviz__, вот.
0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
14.08.2018, 10:26
iwttvod, однозначно, тебе сюда https://www.cyberforum.ru/java-gui/
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 10:31  [ТС]
Aviz__, зачем GUI? Требуют консольное приложение со стандартным вводом-выводом.
0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
14.08.2018, 10:40
Цитата Сообщение от iwttvod Посмотреть сообщение
Требуют
кто если ты делаешь это для себя?
поверь мне Бро, тут наскоком (т.е. быстро) не сделаешь.
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 11:14  [ТС]
Aviz__, я имел в виду тестирующую систему.
0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
14.08.2018, 11:21
так, кто требует?
0
37 / 35 / 9
Регистрация: 13.02.2017
Сообщений: 205
14.08.2018, 11:28
Цитата Сообщение от Aviz__ Посмотреть сообщение
так, кто требует?
Сайт. Ты не видел разве? Там свой код впендюриваешь, и система тестит, как ты эти дроны расписал ))
0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
14.08.2018, 11:32
Цитата Сообщение от alexjun Посмотреть сообщение
Ты не видел разве?
нет, не изучал сайт)
0
3 / 2 / 2
Регистрация: 10.12.2017
Сообщений: 65
14.08.2018, 11:41  [ТС]
alexjun, да, всё верно, типичная онлайн-олимпиадная система.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.08.2018, 11:41

Присваивание значения
MainPt=&quot;H:\!БЭКАПЫ\SSD\Программы&quot; Set Dict=CreateObject(&quot;Scripting.Dictionary&quot;) msgbox UBound(Dict.items)&amp;&quot; &quot;&amp;join(Dict.keys,vbclf) ...

Присваивание значения в цикле
здрасти) вобщем необходимо что бы вот эта галимотья была в цикле:) printf(&quot;%.f&quot;,a); c= pow(a,2); d=c %modl; ...

rudiobutton присваивание значения
привет всем. плз помогите мне надо чтобы когда пользователь выбирал rudiobutton1 то к переменной а писваивалось 600 а если выбирает...

Присваивание значения AnsiString
Есть переменная AnsiString, при создании формы я присваиваю ей значение и получаю Access violation at xxxxxxxx: write of address yyyyyyyy....

Присваивание значения переменной
Доброго времени суток. string name, message; cout &lt;&lt; &quot; Введите Ваше имя и письмо:\n&quot;; cin &gt;&gt; a &gt;&gt; b; cout...


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Новые блоги и статьи
Книги по геймдизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru