Валуева
?>

Найти ошибки в с++ целое число от -99 до 99 вводится с клавиатуры. вывести результат в виде "отрицательное двузначное число", "ноль", "положительное однозначное число" и т.п // zadacha2.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "stdio.h" #include "conio.h" #include "math.h" #include "iostream" using namespace std; int main() { setlocale (lc_all, "rus"); int a; // число printf("введите целое число от -99 до 99\n"); scanf("%d", & a); if(a==0) printf("ноль\n"); else { if(a> 0) printf("положительное\n"); else printf("отрицательное\n"); if(abs(a)< 10) printf("однозначное\n"); else printf("двузначное\n"); } getch(); }

Информатика

Ответы

Erikhovich
#include <iostream>

using namespace std;

int n;

int main()
{
cin >> n;
int kol;
if (n < 0)
cout << "Отрицательное ";
if (n > 0)
cout << "Положительное ";
if (n == 0) cout << "Ноль\n";
else
{
while (n){
kol++; n/=10;
}
if (kol == 2) cout << "двузначное число\n";
else cout << "однозначное число\n";

return 0;
}
Alenachernika9111
     Как известно, нецелые числа в компьютере далеко не всегда представляются точно, поскольку большую часть их даже теоретически невозможно точно перевести в двоичную систему. Это порождает проблемы при проверках на точное равенство. Например, если мы попробуем перевести в двоичную систему число 0.1, то не сможем этого сделать и в компьютере вместо 0.1 будет храниться число, которое чуть-чуть, но все же меньше. Многократно увеличивая шагами какую-то величину на 0.1 мы все больше и больше будет удаляться от правильного (ожидаемого) значения и при проверка на точное равенство нас неприятно удивит. Поэтому в предыдущем ответе, несмотря на то, что диапазон задавался [1.2;2], проверка делается на 2.1 (можно и на 2.0000001 было делать).

     Есть другой писать программы для табуляции функций.
1) Находим, сколько значений нужно получить
Для этого от конечного значения вычитаем начальное, делим на шаг, берем целую часть результата и увеличиваем на единицу.
(2-1.2)/0.1=8, 8+1=9 - именно столько раз выполнится цикл.
Да-да, мы делаем традиционный цикл со счетчиком (for), в котором i будет меняться от 0 до 8.
2) получим формулу для вычисления значения аргумента.
При i=0 значение х(0)=1.2. При i=1 должно получиться x(1)=1.3.
Легко найти зависимость: x(i)=1.2+i/10. Можно компьютер и переписать это выражение в виде x(i)=(12+i)/10, потому что в первом случае будут операции а) перевод i в real б) сложение двух real в) деление двух real, а во втором - а) сложение двух integer б) перевод в real в) деление двух real и это быстрее.

var
  i:integer;
  x,y:real;
begin
  for i:=0 to 8 do begin
    x:=(12+i)/10;
    y:=sqrt(x-1)/sin(1/x);
    Writeln(x:3:1,y:10:6)
    end
end.

Результат
1.2  0.604198
1.3  0.787430
1.4  0.965466
1.5  1.143501
1.6  1.323877
1.7  1.507784
1.8  1.695869
1.9  1.888486
2.0  2.085830
Ryazanova1575
1)
#include <iostream>
#include <math.h>

using namespace std;

int main() {
 int a;
 cin >> a;
 int d = a%10;
 string s = "yes";
 while(abs(a) > 0) {
   if(a%10 != d) {
     s = "no";
     break;
   }
   a/=10;
  }
  cout << s << endl;
}
2)
#include <iostream>
#include <math.h>

using namespace std;

int main() {
 int a;
 cin >> a;
 int d = a%10;
 a/=10;
 string s = "no";
 while(abs(a) > 0) {
  if(a%10 == d) {
    s = "yes";
    break;
  }
  d = a%10;
  a/=10;
  }
  cout << s << endl;
}

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Найти ошибки в с++ целое число от -99 до 99 вводится с клавиатуры. вывести результат в виде "отрицательное двузначное число", "ноль", "положительное однозначное число" и т.п // zadacha2.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include "stdio.h" #include "conio.h" #include "math.h" #include "iostream" using namespace std; int main() { setlocale (lc_all, "rus"); int a; // число printf("введите целое число от -99 до 99\n"); scanf("%d", & a); if(a==0) printf("ноль\n"); else { if(a> 0) printf("положительное\n"); else printf("отрицательное\n"); if(abs(a)< 10) printf("однозначное\n"); else printf("двузначное\n"); } getch(); }
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Наталья
Полковников_Милана
Филиппович_Николаевич
Бегун-Марина
antrotip
pravovoimeridian
annaan-dr582
Alekseevich1012
omigunova39
ksoboleva
Бражинскене_Алексей
ПодлеснаяМакарова1883
kriapex
Голосова-Лобанов1555
lenapopovich556510