С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51

Не могу понять условие задачи

09.02.2016, 07:27. Показов 2834. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, в общем есть у меня одна задача, читая условия которой, я нифига не понимаю что надо делать, да и как это соответственно реализовать. Может кто подскажет как в этом разобраться:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* CRUD
CrUD - Create, Update, Delete
Программа запускается с одним из следующих наборов параметров:
-c name sex bd
-u id name sex bd
-d id
-i id
Значения параметров:
name - имя, String
sex - пол, "м" или "ж", одна буква
bd - дата рождения в следующем формате 15/04/1990
-c  - добавляет человека с заданными параметрами в конец allPeople, выводит id (index) на экран
-u  - обновляет данные человека с данным id
-d  - производит логическое удаление человека с id
-i  - выводит на экран информацию о человеке с id: name sex (м/ж) bd (формат 15-Apr-1990)
 
id соответствует индексу в списке
Все люди должны храниться в allPeople
Используйте Locale.ENGLISH в качестве второго параметра для SimpleDateFormat
 
Пример параметров: -c Миронов м 15/04/1990
*/
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.02.2016, 07:27
Ответы с готовыми решениями:

Не могу понять смысл задачи
Create static method search(String data, String key), which returns amount of String key in data array. In main method, call search method....

Понять условие для задачи
Форумчане, прошу о помощи) Поставлена задача (текст и условие приведены в приложении). Не могу понять, как можно построить ряд от k(k+1)...

Не могу понять условие задачи
Прошу прощения за глупый вопрос, уважаемые!:) Дано задание: "Добавить таблицу, в которую можно добавить записи. Пусть это будет 2...

10
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
09.02.2016, 07:43
Koper, что именно не понятно? Написать программу которая будет людей в список добавлять.
0
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51
09.02.2016, 07:51  [ТС]
там есть два класса



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
public class Person {
    private String name;
    private Sex sex;
    private Date birthDay;
 
    private Person(String name, Sex sex, Date birthDay) {
        this.name = name;
        this.sex = sex;
        this.birthDay = birthDay;
    }
 
    public static Person createMale(String name, Date birthDay){
        return new Person(name, Sex.MALE, birthDay);
    }
 
    public static Person createFemale(String name, Date birthDay){
        return new Person(name, Sex.FEMALE, birthDay);
    }
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public Sex getSex() {
        return sex;
    }
 
    public void setSex(Sex sex) {
        this.sex = sex;
    }
 
    public Date getBirthDay() {
        return birthDay;
    }
 
    public void setBirthDay(Date birthDay) {
        this.birthDay = birthDay;
    }
Java
1
2
3
4
public enum Sex {
    MALE,
    FEMALE
}
и мейн

Java
1
2
3
4
5
6
7
8
9
10
11
public class Solution {
    public static List<Person> allPeople = new ArrayList<Person>();
    static {
        allPeople.add(Person.createMale("Иванов Иван", new Date()));  //сегодня родился    id=0
        allPeople.add(Person.createMale("Петров Петр", new Date()));  //сегодня родился    id=1
    }
 
    public static void main(String[] args) {
        //start here - начни тут
    }
}
и я не понимаю... а что тут вообще блин надо делать то)
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
09.02.2016, 08:40
Koper, принять в программу параметры и произвести соотв. действие описанное в задании. Так же добавить id
1
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51
09.02.2016, 09:24  [ТС]
тогда ещё вопрос, а каак это сделать то?))
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
09.02.2016, 09:28
Koper, для начала радо разбить задачу на более мелкие под-задачи. Например
1. Принять аргументы командной строки и вызвать соотв. (пока пустые) методы

Вы знаете как это сделать? Какой вообще ваш уровень знакомства с джава?
0
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51
09.02.2016, 09:42  [ТС]
да новичёк который рядом с junior даже рядом не стоит, просто есть задачи где более менее понятно что делать, а есть (вот как эта) где я вообще хз как это реализовывать, какими методами и прочее. нашел решение этой задачи так там даже код понять немогу. не вяжется с моей логикой, или сегодня мой мозг ушел на покой.

вот часть реализации
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Solution {
    public static List<Person> allPeople = new ArrayList<Person>();
    static {
        allPeople.add(Person.createMale("Иванов Иван", new Date()));  //сегодня родился    id=0
        allPeople.add(Person.createMale("Петров Петр", new Date()));  //сегодня родился    id=1
    }
    public static void main(String[] args) throws IOException, ParseException {
        if (args.length > 0) {   // почему сравнивается с args?
            int id = 0;
            try {
                id = Integer.parseInt(args[1]);  //почему опять же этот args
            } catch (NumberFormatException e) {}
            if (args[0].equals("-c")) {          //ДА ПОЧЕМУ МЫ ЭТОТ ARGS ИЗ MAIN ЮЗАЕМ ПОСТОЯННО?            
                Date date = new Date(args[3]); // да оказывается я вообще весь код не понимаю
                if (args[2].equals("м")) {
                    allPeople.add(Person.createMale(args[1], date));
                } else {
                    allPeople.add(Person.createFemale(args[1], date));
                }
                System.out.println(allPeople.size() - 1);
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
09.02.2016, 09:56
Лучший ответ Сообщение было отмечено Koper как решение

Решение

Koper, в массиве args программа получает параметры извне. То есть если запустить как
java -jar myJar.jar -c Vasya Male 15\06\2016 то args[0] будет содержать -с, args[1] - Vasya и.т.д
1
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51
09.02.2016, 14:13  [ТС]
ааа, так вон оно чё) вроде немного прозрел, спасибо)

Добавлено через 1 час 38 минут
Вот что то написал, но думаю это далеко от истины, можете ткнуть носом где неправильно
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
68
69
70
71
72
73
/* CRUD
CrUD - Create, Update, Delete
Программа запускается с одним из следующих наборов параметров:
-c name sex bd
-u id name sex bd
-d id
-i id
Значения параметров:
name - имя, String
sex - пол, "м" или "ж", одна буква
bd - дата рождения в следующем формате 15/04/1990
-c  - добавляет человека с заданными параметрами в конец allPeople, выводит id (index) на экран
-u  - обновляет данные человека с данным id
-d  - производит логическое удаление человека с id
-i  - выводит на экран информацию о человеке с id: name sex (м/ж) bd (формат 15-Apr-1990)
 
id соответствует индексу в списке
Все люди должны храниться в allPeople
Используйте Locale.ENGLISH в качестве второго параметра для SimpleDateFormat
 
Пример параметров: -c Миронов м 15/04/1990
*/
public class Solution {
    public static List<Person> allPeople = new ArrayList<Person>();
    static {
        allPeople.add(Person.createMale("Иванов Иван", new Date()));  //сегодня родился    id=0
        allPeople.add(Person.createMale("Петров Петр", new Date()));  //сегодня родился    id=1
    }
 
    public static void main(String[] args) {
    //start here - начни тут
        int id = Integer.parseInt(args[1]);
        if (args[0].equals("-c"))
        {
            if (args[2].equals("м"))
                allPeople.add(Person.createMale(args[1], new Date(args[3])));
            else
                allPeople.add(Person.createFemale(args[1], new Date(args[3])));
            System.out.println(allPeople.size() - 1);
        }
 
       else if (args[0].equals("-u"))
        {
 
            allPeople.get(id).setName(args[2]);
            allPeople.get(id).setBirthDay(new Date(args[4]));
            if (args[3].equals("м"))
                allPeople.get(id).setSex(Sex.MALE);
            else
                allPeople.get(id).setSex(Sex.FEMALE);
        }
 
        else if (args[0].equals("-d"))
        {
 
 
            allPeople.get(id).setName(null);
            allPeople.get(id).setBirthDay(null);
            allPeople.get(id).setSex(null);
        }
 
        else if (args[0].equals("-i"))
        {
 
 
            SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH);
 
            if (allPeople.get(id).getSex().equals(Sex.MALE))
                System.out.println(allPeople.get(id).getName() + " " + "м" + " " + dateFormat.format(allPeople.get(id).getBirthDay()));
            else
                System.out.println(allPeople.get(id).getName() + " " + "ж" + " " + dateFormat.format(allPeople.get(id).getBirthDay()));
 
        }
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
09.02.2016, 16:23
Цитата Сообщение от Koper Посмотреть сообщение
int id = Integer.parseInt(args[1]);
дальше не читал. Уже тут развалиться все.
Вы запускали сами программу то? Передавали ей значения разные и смотрели что все хорошо?
0
 Аватар для Koper
11 / 0 / 0
Регистрация: 07.08.2015
Сообщений: 51
10.02.2016, 07:48  [ТС]
убрал int id = Integer.parseInt(args[1]); внутрь if. И как запускать.. как раз сейчас сижу читаю и пытаюсь понять как же в intelij idea поместить что то в args

Добавлено через 1 час 18 минут
Всё разобрался. спасибо на мудрые наставления)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.02.2016, 07:48
Помогаю со студенческими работами здесь

Не могу понять условие задачи
не могу понять что тут требуется сделать задача с кодеварс - https://www.codewars.com/kata/how-many-lightsabers-do-you-own

Не могу понять условие задачи - 2
я решаю очередную задачу и не могу понять условие а переводчик совсем не помогает Описание ...

Не могу понять условие задачи - 3 (Elixir)
https://www.codewars.com/kata/price-of-mangoes/train/elixir я перевожу в яндексе и получаю как понять что такое &quot;3 для...

Не могу понять условие задачи - 5 (Elixir)
https://www.codewars.com/kata/days-in-the-year/train/elixir Не могу нормально перевести условие задачи, яндекс дает такой перевод ...

Не могу до конца понять условие задачи
Здравствуйте. Задача 9.5 из учебника программированию Б. Страуструпа: Классы Book и Patron у меня уже есть, не пойму следущее:...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru