Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
2 / 2 / 2
Регистрация: 03.11.2013
Сообщений: 41

Выборка даных из файла и построение графика

23.02.2015, 08:30. Показов 1679. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна помощь новичку!
Нужно сделать выборку из текстового файла с даными, сравнить введенное пользователем имя и вывести на екран даные об этом имени а также построить график.
Проблема у меня на даном этапе заключается в том что при построении графика используются даные из другой строки с таким же именем, а нужно из первой. Знаю что эта програма очень далека от идеала, поэтому любые рекомендации будут приветсвоваться. Благодарю заранее!!!

Вот мой код:
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
import java.io.*;
import java.util.*;
import java.awt.*;
 
public class BabyNames_1234
{
   public static void main (String[] args)
        throws FileNotFoundException
   {
      Scanner console = new Scanner (System.in);
      Scanner names_1 = new Scanner (new File("names.txt"));
      Scanner meanings = new Scanner (new File("meanings.txt"));
      
      
      intro();
      String target = search_Target(console, names_1, meanings);
      String definition = search_Definition(console, names_1, meanings, target);
      statistics_panel(definition, target, names_1);
            
   }
   public static void intro()
   {
      System.out.print ("This program allows you to search through the\n" 
                     + "data from the Social Security Administration\n" 
                     + "to see how popular a particular name has been\n"
                     + "since 1920.");
      System.out.println();
   }
   public static String search_Target (Scanner console, Scanner names_1, Scanner meanings)
   {
      System.out.print("Name : ");
        String target = console.next();
      
      boolean found = false;
            
        while (names_1.hasNextLine() && !found)
      { 
         Scanner linescan = new Scanner(names_1.nextLine());
          
        if (target.equalsIgnoreCase(linescan.next()))
        {
              System.out.println(target + "" + linescan.nextLine());           
           while (linescan.hasNextInt())
           {
               int bar_value = linescan.nextInt();
               System.out.println(bar_value);               
           }   
           found = true;
        }                 
       }
       if (!found)
       {
         System.out.println("Name was not found ");
       }
        
   
      return target; 
          
   }
   public static String search_Definition (Scanner console, Scanner names_1, Scanner meanings, String target)
   {
      String definition = " ";
      boolean found = false;
      while (meanings.hasNextLine() && !found)
      {
         if (target.equalsIgnoreCase(meanings.next()))
         {
            definition = meanings.nextLine();
            
            found = true;            
         }        
      }
      return definition;      
   }
 
   public static void statistics_panel(String definition, String target, Scanner names_1)
   {
      
      DrawingPanel panel = new DrawingPanel (780,560);
      
      Graphics g = panel.getGraphics();
      panel.setBackground (Color.WHITE);
      g.setColor (Color.LIGHT_GRAY);
      g.fillRect (0, 0, 780, 30);
      g.fillRect (0, 530, 780, 30);
      g.setColor (Color.BLACK);
      g.drawLine (0, 30, 780, 30);
      g.drawLine (0, 530, 780, 530);
      g.drawString (target + definition, 0, 16);
      for (int i=0; i<13; i++)
      {  
         int x_point = i*60;
         String year = 1890+i*10 + "";
         g.drawString(year, x_point, 552);
      }
      int count = 0;
      boolean found = false;           
        while (names_1.hasNextLine())
      {          
          Scanner linescan = new Scanner(names_1.nextLine());
           if (target.equalsIgnoreCase(linescan.next()))
         {
             String lineOfText = linescan.next();
             //g.drawString(lineOfText, 0, 45);
             while (linescan.hasNextInt()) 
        
             {
                     int bar_value = linescan.nextInt();
                  g.setColor(Color.RED);
                  int point_x1 = (count)*60;
                  int point_x2 = 30;
                  int point_y1 = 30 + bar_value/2;
                  int point_y2 = 530 - point_y1;
                  g.fillRect((point_x1), point_y1, (point_x2), point_y2 ); 
                  count = count + 1;
              }
         
         }   
         
       }
 
      
      
    }
     
 
}
также вот текстовый файл из которого ведется выборка

Alberto m 996 743 654 552 475 494 431 350 292 249 225 270 416
Albin m 369 603 707 526 780 995 0 0 0 0 0 0 0
Albina f 412 483 527 504 855 0 0 0 0 0 0 0 0
Alcide m 814 0 0 0 0 0 0 0 0 0 0 0 0
Alda f 579 589 639 632 732 0 0 0 0 0 0 0 0
Alden m 629 699 860 449 490 545 729 820 0 0 949 854 840
Aldo m 0 0 0 628 709 0 0 997 915 734 792 664 512
Aldona f 0 0 0 903 0 0 0 0 0 0 0 0 0
Aleah f 0 0 0 0 0 0 0 0 0 0 0 603 455
Alec m 603 650 708 817 0 0 969 762 796 774 271 156 418
Alecia f 0 0 0 0 0 0 0 0 731 601 679 0 0
Aleen f 0 918 0 968 0 0 0 0 0 0 0 0 0
Aleena f 0 0 0 0 0 0 0 0 0 0 0 0 558
Aleigha f 0 0 0 0 0 0 0 0 0 0 0 0 994


и второй файл

ALBERTO m Italian, Spanish, Portuguese Italian, Spanish and Portuguese form of ALBERT
ALBIN m Scandinavian, Polish From the Roman cognomen Albinus, which was derived from Latin albus "white, bright".
ALBINA f Italian, Polish Feminine form of Albinus (see ALBIN).
ALBORZ m Iranian From the name of a mountain range (of unknown etymology) in northern Iran.
ALBRECHT m German German cognate of ALBERT
ALBY m Irish Anglicized masculine form of AILBHE
ALCAEUS m Ancient Greek (Latinized) Latinized form of the Greek name (Alkaios), derived from (alke) "strength".
ALCIA f Portuguese Portuguese form of ALICE
ALCIDE m (no meaning found)
ALCIPPE f Greek Mythology (Latinized) From the Greek (Alkippe), which meant "mighty mare" from (alkaios) "mighty" and (hippos) "horse".
ALCYONE f Greek Mythology (Latinized) Latinized form of Greek (Alkyone), derived from the word (alkyon) or (halkyon) meaning "kingfisher".
ALDA f Italian Feminine form of ALDO
ALDEN m English From a surname which was derived from the Old English given name Aldwyn meaning "old friend".
ALDO m Italian Derived from Germanic adal meaning "noble".
ALDONA f (no meaning found)
ALDOUS m English Possibly a short form of beginning with the Germanic element ald "old".
ALDRICK m Possibly derived from the Germanic elements ald "old" and ric "ruler, power".
ALE m Finnish Finnish short form of KSANTERI or KSI
ALE? m Czech, Slovene Pet form of ALEXEJ or ALEKSANDER
ALEA f English (Modern) Variant of ALIYAH
ALEAH mf (no meaning found)
ALEASE f English Possibly a variant spelling of ELOISE or ALICIA
ALEC m English Pet form of ALEXANDER
ALECHJO m Esperanto Esperanto pet form of ALEXANDER
ALECIA mf (no meaning found)
ALECTO f Greek Mythology (Latinized) Latinized form of Greek (Alekto) which was derived from (alektos) "unceasing".
ALED m Welsh Means "offspring" in Welsh.
ALEEN mf (no meaning found)
ALEENA f (no meaning found)
ALEESHA f English (Modern) Variant of ALICIA
ALEID f Dutch Dutch short form of ADELAIDE
ALEIDA f Dutch Dutch short form of ADELAIDE
ALEIGHA f (no meaning found)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.02.2015, 08:30
Ответы с готовыми решениями:

Выборка по диапозону дат и построение графика
Добрый день! Простите за ламерский вопрос, но поиск результатов не дал :( Есть Лист, в котором в столбце &quot;А&quot; хранится дата в...

Выборка чисел из массива и построение графика по этим числам
Доброго времени суток! Помогите, пожалуйста, срочно нужно! Необходимо сгенерировать массив из 3000 точек с числами от 198 до 242, а затем...

Построение графика из файла
Есть текстовый файл, рисую график из этого файла с помощью функции plot3 следующим образом: ss = load('min.txt'); ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.02.2015, 08:30
Помогаю со студенческими работами здесь

Построение графика из txt файла
Есть текстовый файл вида 1.7 2.7 5.5 6.5 2.4 1.2 по этим координатам надо построить график. Подскажите как лучше реализовать и...

Считывание из файла и построение графика
Привет всем, помогите пожалуйста сделать пару заданий: 1. Считать из файла текст в таком формате 1 2 3 4 5 6 7 8 9 10 11 12 и...

Построение графика по данным из файла
Доброго времени суток!!!у меня такой вопрос , возможно ли перевести массив чисел &quot;arr1&quot; в одну переменную &quot;a&quot;? ...

Построение графика по данным из файла
доброго времени...=), в .txt записываются числа построчно. для примера: 1 0 0 1 1 0 0

Построение графика в консоле с текстового файла
Добрый день. Уверен, что тут есть люди которые понимают джаву не на моём уровне) Очень буду благодарен если вы мне поможете! Суть задачи....


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru