Разделы презентаций


Гринчишин Михаил Александрович Преподаватель Клуб программистов 1С Алгоритмы и

Содержание

Задачи Javahttp://informatics.mccme.ru/Дистанционная подготовка / ► 1C / ► Занятие 2. Задачи: ЗАДАЧА А.  Сумма от 1 до NВходные данныеОдно целое число N.Выходные данныеОдно число – сумма всех целых чисел от 1 до N.Примеры: входные данные

Слайды и текст этой презентации

Слайд 1Гринчишин Михаил Александрович
Преподаватель
Клуб программистов 1С
Алгоритмы и программирование

Модуль 1

Занятие 2

Типы данных

и отладка

Гринчишин Михаил АлександровичПреподавательКлуб программистов 1С Алгоритмы и программированиеМодуль 1Занятие 2Типы данных и отладка

Слайд 2Задачи Java
http://informatics.mccme.ru/
Дистанционная подготовка / ► 1C / ► Занятие 2.

Задачи: ЗАДАЧА А. 
Сумма от 1 до N
Входные данные
Одно целое число N.
Выходные

данные
Одно число – сумма всех целых чисел от 1 до N.
Примеры: входные данные 100; выходные данные 5050.
Задачи Javahttp://informatics.mccme.ru/Дистанционная подготовка / ► 1C / ► Занятие 2. Задачи: ЗАДАЧА А. 	Сумма от 1 до NВходные

Слайд 3Создание первого проекта Java
Задача:
Первая задача:
import java.io.*; // библиотека для PrintWriter
import

java.util.*; // библиотека для Scanner
public class prog1 {
public static void

main(String[] args) {
Scanner in= new Scanner(System.in);
PrintWriter out = new PrintWriter(System.out);
long S = 0; // результат
long N = in.nextInt(); // ввод а
//решение
out.println(S); //вывод ответа
out.flush(); in.close;}}//





Создание первого проекта JavaЗадача:Первая задача:import java.io.*; // библиотека для PrintWriterimport java.util.*; // библиотека для Scannerpublic class prog1

Слайд 4Задачи Java
Очевидное решение: Сумма от 1 до N

for (int i

= 1; i


}

Результат: Test 3: Wrong answer

«А! ЦЕЛОЕ, ЭТО МОЖЕТ БЫТЬ И ОТРИЦАТЕЛЬНЫЕ!»

Задачи JavaОчевидное решение: 	Сумма от 1 до N for (int i = 1; i

Слайд 5Задачи Java
Очевидное решение: Сумма от 1 до N if (N

0) {K = -N; }
for (int i = 1; i

<= K; i++) { s += i; }
if (N < 0)
{ s = -s + 1; }

Результат: Test 4: Time Limit

«Тип long, это же больше 1018, это же очень долго.
Надо не циклом, а по формуле!»

Задачи JavaОчевидное решение: 	Сумма от 1 до N if (N < 0) {K = -N; }for (int

Слайд 6Задачи Java
Очевидное решение: Сумма от 1 до N int N =

in.nextInt();
int s = 0;
s = N * (N

+ 1) / 2;
if (N < 0)
{s = -s + 1;}

Результат: Test 5: Wrong Answer

«Надо не int, а long!»

Задачи JavaОчевидное решение: 	Сумма от 1 до N int N = in.nextInt(); int s = 0; s

Слайд 7Задачи Java
Очевидное решение: Сумма от 1 до N long N =

in.nextLong(); long s = 0;
s = N * (N +

1) / 2;
if (N < 0)
{s = -s + 1;}

Результат: Test 6: Wrong Answer

«Сначала делить на 2, потом умножать!»

Задачи JavaОчевидное решение: 	Сумма от 1 до N long N = in.nextLong(); long s = 0;s =

Слайд 8Задачи Java
Очевидное решение: Сумма от 1 до N long N =

in.nextLong();
long s = 0;
s = N * ((N

+ 1) / 2);
if (N < 0)
{s = -s + 1;}

Результат: Test 8: Wrong Answer

«Делить надо то, что делится!»
N – Если четное, N-1, если нечетное

Задачи JavaОчевидное решение: 	Сумма от 1 до N long N = in.nextLong(); long s = 0; s

Слайд 9Задачи Java
Очевидное решение: Сумма от 1 до N long N =

in.nextLong();
long s = 0;
if (N % 2 ==

0)
{s = (N / 2) * (N + 1));}
else {s = N * ((N + 1) / 2); }
if (N < 0) {s = -s + 1; }

Результат: OK

Задачи JavaОчевидное решение: 	Сумма от 1 до N long N = in.nextLong(); long s = 0; if

Слайд 10Создание первого проекта Java
Создание первого проекта – работа с тестирующей

системой (результаты работы)
Первая задача: А+В=?
OK — программа прошла все тесты,

решение верное.

Wrong Answer (Неправильный ответ, WA) — программа прошла не все тесты, то есть работает не во всех случаях. В этом случае в графе «Ошибка на тесте» показывается номер теста, на котором программа выдаёт неверный ответ.

Создание первого проекта JavaСоздание первого проекта – работа с тестирующей системой (результаты работы)Первая задача: А+В=?OK — программа

Слайд 11Создание первого проекта Java
Создание первого проекта – работа с тестирующей

системой (результаты работы)
Первая задача: А+В=?
OK — программа прошла все тесты,

решение верное.

Wrong Answer (Неправильный ответ, WA) — программа прошла не все тесты, то есть работает не во всех случаях. В этом случае в графе «Ошибка на тесте» показывается номер теста, на котором программа выдаёт неверный ответ.

Создание первого проекта JavaСоздание первого проекта – работа с тестирующей системой (результаты работы)Первая задача: А+В=?OK — программа

Слайд 12Создание первого проекта Java
Создание первого проекта – работа с тестирующей

системой (результаты работы)
Первая задача: А+В=?
Presentation Error (Неправильный формат вывода, PE)

— означает, что на каком- то тесте программа выводит ответ не в том формате, как это требуется в условии задачи (например, выводит несколько чисел, когда требуется одно, или выводит слово, когда требуется число).
Runtime Error (Ошибка выполненияRE) — означает, что на каком-то тесте программа выполняет недопустимую операцию (например, происходит деление на 0, выход за пределы массива или иная ошибка, которая может привести к аварийному завершению программы)
Создание первого проекта JavaСоздание первого проекта – работа с тестирующей системой (результаты работы)Первая задача: А+В=?Presentation Error (Неправильный

Слайд 13Создание первого проекта Java
Создание первого проекта – работа с тестирующей

системой (результаты работы)
Первая задача: А+В=?
Memory Limit (Превышен предел по памяти,

ML) — превышен максимальный объём памяти, выделяемый для программы по условию.
Time Limit (Превышен предел времени выполнения программы, TL) — программа работает слишком долго.
Compile Error (Ошибка компиляции, СE) — означает, что программа содержит синтаксические ошибки из-за чего тестирующая система не способна её откомпилировать и запустить на проверку.
Создание первого проекта JavaСоздание первого проекта – работа с тестирующей системой (результаты работы)Первая задача: А+В=?Memory Limit (Превышен

Слайд 14Создание первого проекта Java
Основные правила оформления решений
Программа-решение должна чётко соблюдать

формат входных и выходных данных.
Программа-решение должна отработать (закончить выполнение) быстро.
Входные

данные всегда корректны

Ограничения на входные данные учитываются при разработке программы, но никак не записываются в программу
Создание первого проекта JavaОсновные правила оформления решенийПрограмма-решение должна чётко соблюдать формат входных и выходных данных.Программа-решение должна отработать

Слайд 15Задачи Java
http://informatics.mccme.ru/
Задачи для тех, кто сдал контест первого занятия:

207 241

174 1440 1693

Задачи Javahttp://informatics.mccme.ru/Задачи для тех, кто сдал контест первого занятия:207 241 174  1440 1693

Слайд 16 Простые типы данных Java
Переменные целого типа
int a = 0;// целая

переменная а, значение 0









long b = in.nextInt(); - неправильно!!!
long b

= in.nextLong(); - правильно






Простые типы данных Java Переменные целого типаint a = 0;// целая переменная а, значение 0long b

Слайд 17 Простые типы данных Java
Переменные вещественного типа
float b = 0.5; //

вещественная b, значение 0.5








in.useLocale(Locale.US);
float b = in.nextFloat();


Простые типы данных Java Переменные вещественного типаfloat b = 0.5; // вещественная b, значение 0.5in.useLocale(Locale.US); float

Слайд 18 Простые типы данных Java
Переменные символьного типа
char c = ‘A’; //символ,

кавычки одинарные
String st = “st”; //строка, кавычки двойные









Char c = in.nextChar();









Простые типы данных Java Переменные символьного типаchar c = ‘A’; 	//символ, кавычки одинарныеString st = “st”;	//строка,

Слайд 19 Арифметические операции Java

Арифметические операции Java

Слайд 20 Арифметические операции Java
Деление
Результат деления целого на целое–целое число (остаток отбрасывается):
int

a = 3, b = 4;
float x;
x = 3

/ 4; // = 0
x = 3. / 4; // = 0.75
x = 3 / 4.; // = 0.75
x = a / 4; // = 0
x = a / 4.; // = 0.75
x = a / b; // = 0
x = float(a) / 4; // = 0.75
x = a / float(b); // = 0.75
Арифметические операции Java ДелениеРезультат деления целого на целое–целое число (остаток отбрасывается):int a = 3, b =

Слайд 21 Арифметические операции Java
Остаток от деления - %
int a, b, d;
d

= 85;
b = d / 10; // 8
a

= d % 10; // 5
d = a % b; // 5
d = b % a; // 3

Для отрицательных чисел:

int a = -7;
b = a / 2; // -3
d = a % 2; // -1

-7 = (-4)*2 + 1

остаток  0

Арифметические операции Java Остаток от деления - %int a, b, d;d = 85;b = d /

Слайд 22 Арифметические операции Java
Сокращенная запись операций
int a, b;
...
a ++; //

a = a + 1;
a --; // a

= a – 1;
a += b; // a = a + b;
a -= b; // a = a - b;
a *= b; // a = a * b;
a /= b; // a = a / b;
a %= b; // a = a % b;
Арифметические операции Java Сокращенная запись операцийint a, b;...a ++;  // a = a + 1;

Слайд 23 Операции объекта Math
Используется: Math.операция(аргументы)
Math.abs(x) — модуль числа
Math.sqrt(x)— квадратный корень
Math.sin(x) —

синус угла, заданного в радианах
Math.cos(x) — косинус угла, заданного в

радианах
Math.xp(x) — экспонента ех
Math.ln(x) — натуральный логарифм
Math.pow(x,y)— xy: возведение числа x в степень y
Math.floor(x)— округление «вниз»
Math.ceil(x) — округление «вверх»
Операции объекта Math Используется: Math.операция(аргументы)Math.abs(x) — модуль числаMath.sqrt(x)— квадратный кореньMath.sin(x) — синус угла, заданного в радианахMath.cos(x)

Слайд 24 Операции с объектами
Используется: ссылка на объект
С любыми объектами в Java

программисты работают при помощи ссылок.

Операции с объектамиИспользуется: ссылка на объектС любыми объектами в Java программисты работают при помощи ссылок.

Слайд 25 Операции с объектами
Используется: ссылка на объект
Чаще всего сравнение объектов при

помощи операции равенства (==) является
ошибкой!

String s1 = "abc";
String s2

= "abcd";
s2 = s2.substring(0, 3); // создается новая строка! if (s1 == s2) {out.println(s1 + " equals " + s2); }
else {out.println(s1 + " does NOT equal " + s2); }

Вывод: abc does NOT equal abc

Операции с объектамиИспользуется: ссылка на объектЧаще всего сравнение объектов при помощи операции равенства (==) являетсяошибкой!String s1

Слайд 26 Операции с объектами
Используется: ссылка на объект
Для корректного сравнения объектов используют

специальные
функции.

Операции с объектамиИспользуется: ссылка на объектДля корректного сравнения объектов используют специальныефункции.

Слайд 27 Операции с объектами
Объекты BigInteger и BigDecimal
Во-первых, в Java не разрешена

перегрузка операций.
Для того, чтобы, скажем, сложить
два объекта BigInteger, нужно

пользоваться не операцией «+», а функцией add.
Операции с объектамиОбъекты BigInteger и BigDecimalВо-первых, в Java не разрешена перегрузка операций. 	Для того, чтобы, скажем,

Слайд 28 Операции с объектами
Объекты BigInteger и BigDecimal
Во-вторых, в результате работы функций

реализующих арифметические операции
исходное число не меняется, а создается и возвращается

новое число – результат
операции.
Например, код:
BigInteger b = new BigInteger("1");
b.add(b); // b плюс b out.println(b);
Выведет 1
Правильно
b = b.add(b);
Операции с объектамиОбъекты BigInteger и BigDecimalВо-вторых, в результате работы функций реализующих арифметические операцииисходное число не меняется,

Слайд 29 Операции с объектами
Объекты BigInteger и BigDecimal
Во-вторых, в результате работы функций

реализующих арифметические операции
исходное число не меняется, а создается и возвращается

новое число – результат
операции.
Например, код:
BigInteger b = new BigInteger("1");
b.add(b); // b плюс b out.println(b);
Выведет 1
Правильно
b = b.add(b);
Операции с объектамиОбъекты BigInteger и BigDecimalВо-вторых, в результате работы функций реализующих арифметические операцииисходное число не меняется,

Слайд 30Создание первого проекта Java
Соедините любые три высказывания по итогам занятия

Создание первого проекта JavaСоедините любые три высказывания по итогам занятия

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика