Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314

Задача на линейный массив

25.09.2012, 20:20. Показов 2248. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер. Помогите кто может, и главное, хочет. Java никогда не учил ранее, только СИ++.
Нужно:
Занести в массив результаты измерений температуры воздуха, которые проводились ежедневно в течении декабря месяца. Определить: а) день, когда температура была наибольшей; b) любой из самых холодных дней декабря; c) среднюю температуру тех дней, которые предшествуют первому из самых холодных дней в декабре.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2012, 20:20
Ответы с готовыми решениями:

Задача№ Массив линейный
Введите с клавиатуры пять целочисленных элементов массива X. Выведите на экран значения корней и квадратов каждого из элементов массива. ...

Задача: Линейный массив из 10 чисел.(Форма)
задача : Дан линейный массив из 10 целых чисел. Пересортировать массив по закону: первый меняется с последним, второй с предпоследним и...

Задача: Задан линейный массив, создать 2 массива в одном
Задан линейный массив, создать 2 массива в одном из которых находится все элементы массива кратные 2, а в другом кратные 5.

11
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
25.09.2012, 21:52
странно такое задание видеть от человека который писал на С++, в таких задачах отличия в языках минимальны, как то так
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
int[] temp = new int [31];
        int[] max = {0,0};
        int[] min = {0,0};;
        int average = 0;
        int count = 0;
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i<31; i++){
            System.out.print("Введите значение температуры для дня № " + (i+1) + " : ");
            temp[i] = sc.nextInt();
        }
        
        for (int i = 0; i<31; i++){
            if (max[0]<temp[i]){
                max[0] = temp[i];
                max[1] = i;
            }
            if (min[0]>temp[i]){
                min[0] = temp[i];
                min[1] = i;
            }
        }
        System.out.println("Максимальная температура была " + max[1] + " числа");
        System.out.println("Минимальная температура была "+ min[1] + " числа");
        
        for (int i = 0; i<31; i++){
            if (i != min[1]){
                average += temp[i];
                count++;
            }
            else break;
        }
        System.out.println("среднюю температуру тех дней, которые предшествуют первому из самых холодных дней в декабре: " + average/count);
1
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
25.09.2012, 22:59  [ТС]
Drygba, Скиньте лучше полный код...со всеми библиотеками и шапками,пожалуйста!)
0
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
26.09.2012, 08:17
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
import java.util.Scanner;
 
public class massDes {
    public static void main(String[] args) {
        int[] temp = new int [31];
        int[] max = {0,0};
        int[] min = {0,0};;
        int average = 0;
        int count = 0;
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i<31; i++){
            System.out.print("Введите значение температуры для дня № " + (i+1) + " : ");
            temp[i] = sc.nextInt();
        }
        
        for (int i = 0; i<31; i++){
            if (max[0]<temp[i]){
                max[0] = temp[i];
                max[1] = i;
            }
            if (min[0]>temp[i]){
                min[0] = temp[i];
                min[1] = i;
            }
        }
        System.out.println("Максимальная температура была " + max[1] + " числа");
        System.out.println("Минимальная температура была "+ min[1] + " числа");
        
        for (int i = 0; i<31; i++){
            if (i != min[1]){
                average += temp[i];
                count++;
            }
            else break;
        }
        System.out.println("среднюю температуру тех дней, которые предшествуют первому из самых холодных дней в декабре: " + average/count);
    }
}
1
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
26.09.2012, 23:18  [ТС]
Drygba, протестил программу и нашел ошибки.
Миниатюры
Задача на линейный массив  
0
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
26.09.2012, 23:21  [ТС]
Получается, программа вычисляет не день, когда температура была наибольшей, а предыдущий день. Самый холодный день вообще неправильно определяет. Про среднюю температуру даже в консоли не пишет((( Помогите понять где ошибки!
0
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
28.09.2012, 13:40  [ТС]
Ребята...помогите!)
0
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
29.09.2012, 19:11  [ТС]
никто так и не ответил(
0
80 / 79 / 35
Регистрация: 02.12.2011
Сообщений: 966
Записей в блоге: 3
29.09.2012, 22:33
На Java писать не умею, но сложностей не особых не вижу. Накидал немного кода.
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
import java.util.Scanner;
import java.util.Random;
 
public class Weather { 
    Scanner in = new Scanner(System.in);
    static Random random = new Random();
    final int days_number = 31;
    int days[] = new int[days_number];
    
    void enter() {
        System.out.print("Enter max temperature: ");
        int max_temperature = in.nextInt();
        System.out.print("Enter min temperature: ");
        int min_temperature = in.nextInt();
        for (int i = 0; i < days_number; i++) {
            days[i] = -(random.nextInt(min_temperature)) + random.nextInt(max_temperature);
        }
    }
    
    void show() {
        for(int i = 0; i < days_number; i++) {
            System.out.println("Day " + (i + 1) + " : " + days[i]);
        }
    }
    
    void find() {
        double sum = 0;
        int max, min, max_day, min_day;
        max = min = max_day = min_day = 0;
        
        for (int i = 0; i < days_number; i++) {
            if (min > days[i]) {
                 min = days[i];
                 min_day = i + 1;
            }
            if (max < days[i]) {
                 max = days[i];
                 max_day = i + 1;
            }
        }
        
        for (int i = 0; i < min_day - 1; i++) {
            sum += days[i];
        }
        System.out.println("The coldest day in December " + min_day);
        System.out.println("The hottest day in December " + max_day);
        System.out.println("Mid val: " + (double)sum/min_day);
    }
    
    public static void main(String [] arg) {
        Weather december = new Weather();
        december.enter();
        december.show();
        december.find();
    }
    
}
1
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
01.10.2012, 18:46  [ТС]
Kidasov, Не могу поверить, как не зная, яву можно такое написать?) Талант!!))

Добавлено через 7 минут
Получается, что температура вводится по модулю? т.к. при отрицательных значениях получается ошибка.

Добавлено через 8 минут
Вот еще, забавно получилось, но в декабре температура должна быть ниже нуля))) Подкорректируйте плиз)
0
80 / 79 / 35
Регистрация: 02.12.2011
Сообщений: 966
Записей в блоге: 3
02.10.2012, 00:08
Ввод делал случайным, чтобы 31 число не вводить.

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
import java.util.Scanner;
import java.util.Random;
import java.lang.Math;
 
public class Weather { 
    Scanner in = new Scanner(System.in);
    static Random random = new Random();
    final int days_number = 31;
    int days[] = new int[days_number];
    
    int enter() {
        System.out.print("Enter  minimal temperature in December : ");
        int min_temperature = in.nextInt();
        if (min_temperature >= 0) {
            System.out.println("Temperature must be negative");
            return -1;
        }
        for (int i = 0; i < days_number; i++) {
            days[i] = -random.nextInt(Math.abs(min_temperature)) - 1;
        }
        return 1;
    }
    
    void show() {
        for(int i = 0; i < days_number; i++) {
            System.out.println("Day " + (i + 1) + " : " + days[i]);
        }
    }
    
    void find() {
        double sum = 0;
        int max, min, max_day, min_day;
        max_day = min_day = 0;
        
        max = min = days[0];
 
        for (int i = 0; i < days_number; i++) {
            if (min >= days[i]) {
                 min = days[i];
                 min_day = i + 1;
            }
            if (max <= days[i]) {
                 max = days[i];
                 max_day = i + 1;
            }
        }
        
        for (int i = 0; i < min_day - 1; i++) {
            sum += days[i];
        }
        System.out.println("The coldest day in December " + min_day);
        System.out.println("The hottest day in December " + max_day);
        System.out.printf("Mid val: %.2f\n", (double)sum/min_day);
    }
    
    public static void main(String [] arg) {
        Weather december = new Weather();
        if(december.enter() > 0) {
            december.show();
            december.find();
        }
    }
}
0
hijack2012
02.10.2012, 22:31
Замените в последнем примере строчки на
days[i] = min_temperature+(random.nextInt(max_temp erature-min_temperature));
и
System.out.println("Mid val: " + (double)sum/(min_day-1));
и будет вам счастье с вводом любых значений граничных температур и правильным подсчетом средней температуры.

Добавлено через 1 минуту
Ой, простите, не заметил, что на второй страничке еще ответ есть)))
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.10.2012, 22:31
Помогаю со студенческими работами здесь

Задача. Отсортировать линейный массив из 20 действительных чисел методом включения
Ну плиз помогите решыть!

задача на тему линейный поиск
даны 2 целочисленных массива k(m) и l(n). найти наибольший элемент массива k, не имеющий себе равных в массиве l.

Массив: Из заданной матрицы создать линейный массив из максимальных элементов каждой строки.
Здравствуйте, помогите, кто чем может. Не могу решить 2 задачи: 1) Из заданной матрицы создать линейный массив из максимальных элементов...

Создать линейный массив, отсортировать его в другой массив, вывести адрес всех елементов
Помогите пожалуйста с кодом ,нужно за час сдать , напишите код , только попроще Создать линейный массив, отсортировать его в другой...

Создать линейный массив, отсортировать его в другой массив, вывести адрес всех елементов
Помогите пожалуйста, за час нужно сдать , напишите код , только попроще создать линейный массив , отсортировать его в другой массив,...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru