Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.53/19: Рейтинг темы: голосов - 19, средняя оценка - 4.53
turtles
2 / 2 / 2
Регистрация: 17.02.2011
Сообщений: 49
1

Элементы последовательности

21.09.2011, 10:35. Просмотров 3600. Ответов 11
Метки нет (Все метки)

Здравствуйте, подскажите какой из двух кодов более правильнее, или что можно переделать или дописать в коде!

1)
Программа должна, выводить на экран
первые 55 элементов последовательности
1 3 5 7 9 11 13 15 17 ….

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Первый код:
 
public class Test {
    public static void main(String args[]){
       int sum = 1;
        int count = 0;
         for(int i = sum; i <= 333; i += 2){
          sum = i;
           count++;
          if(sum == 111)break;
        System.out.println(count + " элемент - " + sum);
        }
      System.out.println("Первые " + (count-1) + " элементов");
    }
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Второй код:
 
public class Test {
    public static void main(String args []){
      int sum = 0;
       int count = 0;
        for (int i = sum; i <= 54; i++) {
           sum = 2 * i + 1;
            count++;
          System.out.println(count + " элемент - " + sum);
       }
     System.out.println("Первые " + count + " элементов");
   }
}
2)
Подскажите и поэтому коду что можно добавить или переделать!

Программа должна, выводить на экран
все неотрицательные элементы последовательности
90 85 80 75 70 65 60 ….

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Test {
    public static void main(String args[]){
       final int first = 90;
         final int second = -90;
          int count = 0;
           for(int i = first; i > second; i-=5){
            count++;
              if(i == 0)break;
               System.out.println(count + " элемент - " + i);
             }
          System.out.println("Все неотрицательные элементы 90 85 80 75 70 65 60 ….");
      }
}
3)
Подскажите и поэтому коду что можно добавить или переделать!

Программа должна, выводить на экран
первые 20 элементов последовательности
2 4 8 16 32 64 128 ….

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Test {
    public static void main(String args[]){
      final int a = 1;
        int sum;
        int count = 0;
        sum = (int) Math.pow(a,2);
       for(int i = 1; i <= 20; i++){
         sum*=2;
           count++;
         System.out.println(count + " элемент - " + sum);
       }
      System.out.println("Первые " + count + " элементов");
    }
}
P.S. Все компилировал и запускался код, спрашиваю совет что можно до делать или переделать как будет правильней!

Добавлено через 3 часа 24 минуты
Подскажите еще по коду, правильно ли с циклом for!
Вывести на экран все члены последовательности 2an-1–1, где a1=2, которые меньше 10000.

Вот написал код с циклом for вроде работает.

Java
1
2
3
4
5
6
7
8
9
10
первый код:  
    public class Test {
        public static void main(String args []){
         for(int a = 2, i = 1; i < a; a = 2 * a - 1,i++){
            if(a <=10000){
              System.out.print(a + " "); }
            }
        }
    }
    с циклом for выводит вот так: 3 5 9 17 33 65 129 257 513 1025 2049 4097 8193
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
второй код:
 
    public class Test {
        public static void main(String args []){
            int a = 2;
            while(true){
                if(a <= 10000){
                    a = 2 * a - 1;
                    System.out.print(a + " ");
                }
            }
        }
    }
     
    с циклом while выводит вот так: 3 5 9 17 33 65 129 257 513 1025 2049 4097 8193 16385
     
    подскажите как правильно написать с циклом while!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2011, 10:35
Ответы с готовыми решениями:

Второй и предпоследний элементы последовательности
Добрый вечер! Помогите Пожалуйста написать программу, которая будет вычислять...

Найти элементы последовательности, которые равны полусумме соседних элементов
Ввести с консоли n целых чисел. На консоль вывести: элементы которые равны...

Определить, все ли элементы последовательности упорядочены по возрастанию
напечатать true если все элементы последовательности упорядочены по возрастанию...

Определить, есть ли в последовательности числа, равные среднему арифметическому всех членов последовательности
/*Дана последовательность чисел.Определить,есть ли среди них числа,равные...

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

11
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
21.09.2011, 11:14 2
Все достаточно просто:
1)
Java
1
2
for (int i = 1, j = 0; j < 55; i += 2, ++j)
   System.out.print(i + " ");
2)
Java
1
2
for (int i = 90; i >= 0; i -= 5)
   System.out.print(i + " ");
3)
Java
1
2
for (long i = 2, j = 0; j < 20; ++j, i <<= 1)
   System.out.print(i + " ");
4)
Java
1
2
3
int a, i = 1;
while ((a = (i <<= 1) | 1) < 10000) {
   System.out.print(a + " ");
Не стоит настолько буквально понимать задание, особенно в последней задаче
1
turtles
2 / 2 / 2
Регистрация: 17.02.2011
Сообщений: 49
21.09.2011, 13:37  [ТС] 3
"M128K145" Подскажите по коду что не правильно не могу разобраться!
вроде бы все логически правильно

Java
1
2
3
4
5
6
7
public class Test {
    public static void main(String args []){
      for(int a = -166, i = 1; a > 9 && a < 100; a = 2 * a + 200, i++){
           System.out.println(a + " ");
       }
    }
}
Должен выводить, а Не выводит результат на экран все двузначные члены последовательности!
0
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
21.09.2011, 13:44 4
a = -166 и a > 9 противоречат друг-другу
1
turtles
2 / 2 / 2
Регистрация: 17.02.2011
Сообщений: 49
21.09.2011, 13:50  [ТС] 5
"M128K145"
Вот все исправил,
Java
1
for(int a = -166, i = 1; a < 100; a = 2 * a + 200, i++)
но выводит такой вот результат:-166 -132 -64 72

подскажите как можно дописать код чтоб выводила только двузначный член
0
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
21.09.2011, 14:15 6
turtles, как звучит задание?
1
turtles
2 / 2 / 2
Регистрация: 17.02.2011
Сообщений: 49
21.09.2011, 14:17  [ТС] 7
Выведите на экран все двузначные члены
последовательности 2an-1+200, где a1= –166.
0
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
21.09.2011, 14:44 8
Java
1
2
3
4
int i, a = -166;
while ((i = (a++ << 1) + 200) < 100)
   if (i > -100)
      System.out.print(i + " ");
1
turtles
2 / 2 / 2
Регистрация: 17.02.2011
Сообщений: 49
21.09.2011, 15:01  [ТС] 9
"M128K145" подскажите пожалуйста как написать это с циклом for
а то с while не очень понятно
0
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
21.09.2011, 15:16 10
Java
1
2
3
4
5
6
int i, a = -166;
for (i = (a++ << 1) + 200; i < 100; ++a) {
   if (i > -100)
      System.out.println(i);
   i = (a++ << 1) + 200;
}
2
Иван Сергеевич
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 53
19.10.2012, 17:56 11
Я сейчас решаю ту же задачу я пару недель как взялся учить Java хотел чтоб вы пояснили кое-что
Цитата Сообщение от M128K145 Посмотреть сообщение
int i, a = -166;
for (i = (a++ << 1) + 200; i < 100; ++a) {
* *if (i > -100)
* * * System.out.println(i);
* *i = (a++ << 1) + 200; //зачем здесь по битный сдвиг?
}
и да в задании сказано что должны выводится только двузначные значения!
"Выведите на экран все двузначные члены последовательности 2an-1+200, где a1= –166."
я пытался прикрутить не вышло((
0
mutagen
2565 / 2238 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
20.10.2012, 18:21 12
Цитата Сообщение от Иван Сергеевич Посмотреть сообщение
//зачем здесь по битный сдвиг?
это всё равно что
Java
1
2
a = a+1;
a = a*2;
1
20.10.2012, 18:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2012, 18:21

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

Вывод последовательности, определяющий, являются ли простыми/совершенными соответствующие элементы введённой последовательности
Никак не приходит в голову, как составить алгоритм, реализующий проверку на то,...

Даны две последовательности целых чисел. Удалить из первой последовательности все элементы, встречающиеся во второй
Решить с помощью vector. Даны две последовательности целых чисел. Удалить из...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru