Программа находит сумму цифр числа

Эта заметка продолжает цикл материалов по использованию формул массива. Если ранее вы не сталкивались с формулами массива, рекомендую начать с Введение в формулы массива и Некоторые примеры использования формул массива. Основное достоинство формул массивов состоит в том, что они позволяют выполнять очень широкий круг вычислений, который другими способами выполнить нельзя. К сожалению, формулы массивов – это наиболее сложное и непонятное средство Excel.

В настоящей заметке использованы материалы книги Джона Уокенбаха MS Excel 2007. Библия пользователя. – М.: Издательский дом «Вильямс», 2008. – 816 с.

Скачать заметку в формате Word, примеры в формате Excel

Сумма цифр целого числа

Приведенная ниже формула массива возвращает сумму цифр, составляющих положительное целое число, которое содержится в ячейке А1. Например, если в этой ячейке хранится число 409, то формула вернет число 13 (сумму цифр 4, 0 и 9):

Чтобы понять, как работает эта формула, рассмотрим последовательно ее работу.

Как найти сумму цифр числа в Python

1. ДЛСТР(A1) возвращает количество цифр числа, находящегося в ячейке А1. В нашем примере, 3.

2. Функция <=СТРОКА(ДВССЫЛ( » 1: » возвращает массив целых чисел, который начинается с единицы и заканчивается числом, равным количеству цифр, которые составляют значение, хранящееся в ячейке А1. В нашем примере СТРОКА создаст следующий виртуальный массив:

3. Функция ПСТР возвращает часть текстовой строки. Функция ПСТР имеет три аргумента: (1) текст; в нашем примере содержимое ячейки А1, 409;
(2) начальная позиция; в нашем примере – массив , то есть в первом заходе будет использовано значение 1, во втором – 2, в третьем – 3;
(3) количество извлекаемых символов; в нашем примере, 1.
В нашем примере функция ПСТР выглядит так: <=ПСТР(409;;1)>. Функция создаст массив из трех элементов: .

Читайте также:
Цели и задачи обучения аудированию в соответствии с требованиями программы

4. К сожалению, функция ПСТР возвращает массив строк, которые содержат текст. Чтобы преобразовать строку, которая выглядит как число, в соответствующее число, следует умножить ее на единицу (что и было сделано). Можно также воспользоваться функцией ЗНАЧЕН, которая преобразует текстовую строку, содержащую число, в соответствующее значение:

5. И, наконец, функция СУММ суммирует элементы массива : <=СУММ()>. Эта формула возвращает значение 13.

Вы также можете «встать» в ячейку В1 и пройти по меню Формулы → Зависимости формул → Вычислить формулу. В открывшемся окне, нажимая последовательно на «Вычислить», вы будете видеть, как работает эта формула шаг за шагом:

Заметьте, что формула не работает с отрицательными числами, поскольку знак «минус» не является числом. В следующей формуле эта проблема решается с помощью функции ABS, которая возвращает модуль аргумента:

Источник: baguzin.ru

Программа находит сумму цифр числа

Сборник практических заданий и их решений для языка программирования Java.

Как найти сумму n чисел Python

понедельник, 14 октября 2013 г.

Для введённого пользователем с клавиатуры натурального числа посчитайте сумму всех его цифр (заранее не известно сколько цифр будет в числе).

Для введённого пользователем с клавиатуры натурального числа посчитайте сумму всех его цифр (заранее не известно сколько цифр будет в числе).

Изначально пришло на ум решение задачи при помощи цикла и деления числа по модулю пока результат такого деления не равен 0

import java.util.Scanner;
public class Zadachi<
public static void main(String[] args)<
Scanner scn=new Scanner(System.in);
if(scn.hasNextInt())<
a=scn.nextInt();
System.out.println(«Сумма всех чисел введенного числа равна «+c);
else System.out.println(«Ошибка. Вы ввели не число!»);

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

Потом покопавшись в интернете и документации решение нашлось
import java.util.Scanner;
public class Zadachi<
public static void main(String[] args)<
Scanner scn=new Scanner(System.in);
System.out.println(«Введите число: «);
if(scn.hasNextInt())<
//В переменную типа String занесем значения числа пользователя
a=scn.nextLine();
//Созданим переменную c, в которой будем хранить сумму чисел заданного числа

//Создадим цикл, который будет по очереи складывать значения всех символов заданного числа
for(int i=0;i

Читайте также:
Программа самообучения vag список

//Проблема заключается в том, что вместо самого значения символа при математических действиях приходилось иметь дело с его числовым кодом, который на 48 больше самого числа, поэтому пришлось идти на хитрость

Источник: javazadachi.blogspot.com

Программа находит сумму цифр числа

Необходимо найти и вывести количество и сумму чётных цифр в десятичной записи Если чётных цифр в числе нет, нужно вывести слово «NO».

Например, для нужно вывести числа (в числе три чётные цифры) и ( ), а для – слово «NO».
Для решения этой задачи ученик написал программу, но, к сожалению, его программа неправильная.
Ниже эта программа для Вашего удобства приведена на пяти языках программирования.
Алгоритмический язык

DIM N, D, K, S AS INTEGER INPUT N K = 0 S = 0 WHILE N > 1 D = N MOD 10 IF D MOD 2 = 0 THEN K = K + 1 S = D END IF N = N 10; WEND IF S > 0 THEN PRINT K, S ELSE PRINT «NO» END IF
Последовательно выполните следующее.

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

Достаточно указать ошибки и способ их исправления для одного языка программирования.

Обратите внимание: Вам нужно исправить приведённую программу, а не написать свою. Вы можете только заменять ошибочные строки, но не можете удалять строки или добавлять новые. Заменять следует только ошибочные строки: за исправления, внесённые в строки, не содержащие ошибок, баллы будут снижаться.

Показать разбор
(допускаются иные формулировки ответа, не искажающие его смысла)

  1. При вводе программа выведет числа и
  2. Программа выводит верный ответ, если в числе ровно одна ненулевая чётная цифра и эта цифра расположена левее всех нулей. Примеры таких трёхзначных чисел:
  3. Программа содержит две ошибки.

Первая ошибка. Неверный подсчёт суммы цифр. Очередная найденная цифра не прибавляется к сумме, а записывается в неё. В результате вместо суммы чётных цифр определяется первая слева чётная цифра.

Вторая ошибка. Неверное условие наличия чётных цифр. Вместо количества цифр проверяется их сумма. В результате в ситуации, когда в числе есть нули, но нет других чётных цифр, будет выведен неверный ответ.

Читайте также:
Как скрывать программы в панели задач

Не является ошибкой условие цикла. Проверка вместо приводит к тому, что если число начинается с единицы, то эта единица не проверяется, но поскольку единица не является чётной цифрой, это не влияет на правильность ответа.

Пример исправления для алгоритмического языка

Первая ошибка:

s := d
Исправленная строка:
s := s + d
Вторая ошибка:
если s > 0 то

Исправленная строка:
если k > 0 то
В программах на других языках ошибочные строки и их исправления аналогичны.

Незначительной опиской, не влияющей на оценку, следует считать отсутствие служебных слов и знаков, не влияющих на содержательную часть исправления (например, слова «то» или точки с запятой).

Указания по оцениванию

В задаче требуется выполнить четыре действия.

  1. Указать, что выведет программа при конкретном вводе.
  2. Указать пример входного числа, при котором программа выдаёт верный ответ, и ответ программы в этом случае.
  3. Исправить первую ошибку в программе.
  4. Исправить вторую ошибку в программе.

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

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

Для действий 1 и 2 учащийся не обязан объяснять, как получен результат, достаточно указать верные числа.

Каждое из действий 3 и 4 считается выполненным при одновременном выполнении двух условий:

  1. правильно указана строка с ошибкой;
  2. указан такой новый вариант строки, что при исправлении другой ошибки получается правильная программа.

В исправленной строке допускаются незначительные синтаксические ошибки (лишние или пропущенные знаки препинания, неточные написания служебных слов языка).

Критерии оценки

3 балла Выполнены все четыре необходимых действия, ни одна верная строка не указана в качестве ошибочной.

2 балла Не выполнены условия, позволяющие поставить балла. Имеет место одна из следующих ситуаций.
1. Выполнены три из четырёх необходимых действий, ни одна верная строка не названа ошибочной.
2. Выполнены все четыре необходимых действия, одна верная строка названа ошибочной.

1 балл Не выполнены условия, позволяющие поставить или балла.
Выполнены два из четырёх необходимых действий.

Источник: yandex.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru