Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ElShikari
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 35
#1

Задача на С++ - C++

06.02.2014, 21:13. Просмотров 542. Ответов 11
Метки нет (Все метки)

Условие задачи
Вася и Петя учатся в школе в одном классе. Недавно Петя поведал Васе о хитром способе возведения в квадрат натуральных чисел, оканчивающихся на цифру 5. Теперь Вася может с легкостью возводить в квадрат двузначные (и даже некоторые трехзначные) числа, оканчивающиеся на 5. Способ заключается в следующем: для возведения в квадрат числа, оканчивающегося на 5 достаточно умножить число, полученное из исходного вычеркиванием последней пятерки на следующее по порядку число, затем остается лишь приписать «25» к получившемуся результату справа. Например, для того, чтобы возвести число 125 в квадрат достаточно 12 умножить на 13 и приписать 25, т.е. приписывая к числу 12*13=156 число 25, получаем результат 15625, т.е. 1252=15625. Напишите программу, возводящую число, оканчивающееся на 5, в квадрат для того, чтобы Вася смог проверить свои навыки.
Входные данные
В единственной строке входного файла INPUT.TXT записано одно натуральное число А, оканчивающееся на цифру 5, не превышающее 4*105.
Выходные данные
В выходной файл OUTPUT.TXT выведите одно натуральное число - A2 без лидирующих нулей.
Примеры
INPUT.TXTOUTPUT.TXT
5 25
75 5625
4255 18105025

В чем проблема?
0
Миниатюры
Задача на С++  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2014, 21:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача на С++ (C++):

Задача: В некотором государстве ввели компьютерный паспорт гражданина.(задача) - Pascal
Доброго времени суток,форумчане. Хотелось бы попросить помощи в решении одной задачи от умных голов. Задача: В некотором...

Задача на k-тую цифру последовательности, задача на схему Горнера. - Pascal
Ну, собственно опять прошу помощи... Задача 1: Определить k-тую цифру последовательности 1234567891011121314…, в которой выписаны подряд...

Задача на перебор вариантов. Задача Л.Эйлера. Про чиновника - PascalABC.NET
Задача Л.Эйлера. Некий чиновник купил лошадей и быков на сумму 1770 талеров. За каждую лошадь он уплатил по 31 талеру, а за каждого быка по...

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

Задача о размещении весов по ящикам (задача о рюкзаках) - Delphi
Есть упорядоченный по невозрастанию набор весов предметов w1..wn, которые необходимо распределить по ящикам способным выдержать вес V,...

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

11
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
06.02.2014, 21:16 #2
ElShikari, Судя по всему вы этот код копировали откуда то. Не правильные символы >> и <<
скопируй это
C++
1
2
3
int a;
cin>>a;
cpit<<pow(a,2);
1
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
06.02.2014, 21:18 #3
ElShikari, pow первый аргумент принимает с плавающей запятой.
Можете сделать приведение типов:
C++
1
pow((double)a, 2);
1
ElShikari
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 35
06.02.2014, 21:27  [ТС] #4
Выдает ошибку:
0
Миниатюры
Задача на С++  
Черный ворон
130 / 124 / 6
Регистрация: 31.01.2012
Сообщений: 435
06.02.2014, 21:30 #5
ElShikari,
Цитата Сообщение от cooller_94 Посмотреть сообщение
cpit<<pow(a,2);
C++
1
cout<<pow((double)a, 2);
а вообще, Ваше решение неверно. у Вас в задании написан метод которым необходимо возводить в квадрат числа оканчивающиеся на 5.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <fstream.h>
int main()
{
    int n=0;
    ifstream inputFile ("input.txt");
    ofstream outputFile ("output.txt");
    inputFile>>n;       
    if (n>4*105) outputFile<<"number in input more than 4*105";
    else 
    {
        n = (n-5)/10;
        n = ((n*(n+1))*100)+25;
        outputFile<<n;
    }
    inputFile.close();
    outputFile.close();
    return 0;
}
1
EragonJKee
9 / 10 / 1
Регистрация: 19.01.2014
Сообщений: 83
06.02.2014, 21:32 #6
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <cmath>
int main() {
    int a;
    std::cin >> a;
    std::cout << pow((double)a,2) << '\n';
    return 0;
}
Это ваш исправленный код.
1
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,186
06.02.2014, 21:36 #7
а что за cpit такой???
я знаю cout console output "вывод на консоль"
C++
1
cout<<pow((double)a, 2);
Добавлено через 2 минуты
Цитата Сообщение от Черный ворон Посмотреть сообщение
(n>4*105)
там скорее всего имелось в виду 4*105 то бишь 400 000
1
ElShikari
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 35
06.02.2014, 21:37  [ТС] #8
Помогло. Всем большое спасибо.
0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,186
06.02.2014, 21:46 #9
Цитата Сообщение от Черный ворон Посмотреть сообщение
n = (n-5)/10;
бесполезное вычитание пятерка и так потеряется
посему можно так

C++
1
2
n /= 10;
n = ((n*(n+1))*100)+25;
или так
C++
1
n = (((n/10)*(n/10+1))*100)+25;
а можно так
C++
1
2
n-=5;
n=n*(n+10)+25
в общем вариантов много

Добавлено через 5 минут
а вот откуда ноги растут у этого утверждения
(10*x+5)(10*x+5)=100*x2+100*x+25=100*x*(x+1)+25
1
Черный ворон
130 / 124 / 6
Регистрация: 31.01.2012
Сообщений: 435
06.02.2014, 21:47 #10
Цитата Сообщение от ValeryS Посмотреть сообщение
или так
Код C++
1
n = (((n/10)*(n/10+1))*100)+25;
Цитата Сообщение от ValeryS Посмотреть сообщение
бесполезное
деление на 10 дважды, если Вы уж так радеете за бесполезность некоторых действий.

Не по теме:

Цитата Сообщение от ValeryS Посмотреть сообщение
а что за cpit такой???
я знаю cout console output "вывод на консоль"
думаю недоученная слепая печать, клавиши соседние справа для обоих букв. вывод - еще неустойчива моторика движений и невнимательность при просмотре только что набранного

0
ValeryS
Модератор
6707 / 5116 / 482
Регистрация: 14.02.2011
Сообщений: 17,186
06.02.2014, 21:50 #11
Цитата Сообщение от Черный ворон Посмотреть сообщение
деление на 10 дважды,
зато запись в одну строку
ну возьми третий вариант вообще без делений
в первом одно деление

Не по теме:

Цитата Сообщение от Черный ворон Посмотреть сообщение
думаю недоученная слепая печать,
а мне кажется скопировал из какой то отсканенной книжки

0
Черный ворон
130 / 124 / 6
Регистрация: 31.01.2012
Сообщений: 435
06.02.2014, 21:59 #12
Цитата Сообщение от ValeryS Посмотреть сообщение
третий вариант вообще без делений
думаю он самый оптимальный и будет.
0
06.02.2014, 21:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.02.2014, 21:59
Привет! Вот еще темы с ответами:

Задача на файл и задача на создание очереди - Pascal
1 Дан символьный файл, содержащий, по крайней мере, один символ пробела. Удалить из файла все символы, предшествующие пробелу 2 ...

Задача Дам или задача Восьми - Алгоритмы
помогите найти ошибку в алгоритме. не находит ответ подозреваю ошибку в k, i, j package com.company; import java.util.Arrays;...

задача Коши и краевая задача - Matlab
Помогите кто чем может))

Задача работы с массивом и задача работы с формой - C#
Помогите пожалуйста. Никак не могу разобраться с решением 2х задач: 1. Напишите приложение, которое в заголовке формы выводит ее...


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

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

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