Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.99/76: Рейтинг темы: голосов - 76, средняя оценка - 4.99
Заблокирован
1

Нахождение абсолютного значения

26.03.2012, 07:43. Показов 13828. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Начинаю изучать С++.В книге прочитал что есть библиотечная функция abs() для нахождения абсолютного значения. Решел попробовать без нее.
в 12ой строке ошибка.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
 #include <cstdio>
 #include <cstdlib>
 
 using namespace std;
 
 /* программа нахождения абсолютного значения, 
 функция absol не посредственно ищет это значение*/
 
 int absol(int d)
 {
 if(a<0) // ошибку показывает здесь 
 {
 d=-a;
 }
 else
 {
 d=a;
 }
 
 return d;
 }
 int main()
 {
 int a;
 int b;
 cout << "Введите число, абсолютное значение которогы вы хотите найти: ";
 cin >> a;
 cout << "\n";
 b=absol(a);
 cout <<"absolyt: " << b<< endl;
 cout <<"END";
 return 0;
 
 }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.03.2012, 07:43
Ответы с готовыми решениями:

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

Добавить к каждому числу корень квадратный из абсолютного значения произведения
Есть задание на шаблоны функции я слаб в си++, прощу помощи, по заданию, оставляйте комментарии по возможности что делаете в коде ...

Программа с использованием перезагрузки ф-ций для определения абсолютного значения числа
У меня завтра экзамен. Я решила все задачи кроме одной. Помогите пожалуйста или подскажите как сделать! Вот и задача! Программа с...

4
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
26.03.2012, 08:10 2
Во-первых, в области видимости функции absol переменная a не определена. Во-вторых, аргументом функции (формальным параметром) является переменная d, ее значение и нужно рассматривать:

C
1
2
3
4
5
6
7
int absol(int d)
{
  if(d < 0)
    return -d;
  else
    return d;
}
Или короче, с использованием тернарного оператора:

C
1
2
3
4
int absol(int d)
{
  return d < 0 ? -d : d;
}
1
Заблокирован
26.03.2012, 08:27  [ТС] 3
Спасибо, разобрался и уложил в голове
Цитата Сообщение от Nameless One Посмотреть сообщение
Или короче, с использованием тернарного оператора:

C
1
2
3
4
int absol(int d)
{
  return d < 0 ? -d : d;
}
это пока еще загадка для меня.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
26.03.2012, 08:32 4
colding54, синтаксис:
Code
1
expr '?' then-expr ':' else-expr
Сначала вычисляется expr. Если оно вычисляется в истину, то тогда вычисляется и возвращается значение then-expr. Иначе вычисляется и возвращается значение else-expr (т.е. оператор является short-circuit).

Тернарный оператор в функции absol можно читать так: если d меньше нуля, то вернуть -d, иначе вернуть d
0
 Аватар для Kuzia domovenok
4264 / 3323 / 925
Регистрация: 25.03.2012
Сообщений: 12,521
Записей в блоге: 1
26.03.2012, 10:55 5
Переменные могут быть определены как локальные или глобальные. От этого зависит их область видимости. Глянь пример.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
 using namespace std;
  int x;// глобальная переменная
int func(int d)
 {
    int c;
    c=x+d;//в функции можно обращаться к своим параметрам (d), глобальным переменным(x)
             //и локальным переменным, но только этой функции (с);
    c=b;// !запрещено! b - локальная переменная из другой функции
    return d;
 }//после завершения функции её локальные переменные уничтожаются,
//поэтому не надейся сохранить в переменной "с", например, сумму результатов всех вызовов функций
// новый вызов - новая "c"
 
 int main()
 {
   int b; 
   int a;
   a=10; x=20;
   b=func(a);//здесь мы вызываем функцию с параметром 10
   //при этом переменные a и b нам временно перестают быть видны
   //но так как мы передали параметр
   //то значение a скопируется в функцию в виде параметра d
 
   return 0;
 
}
Вот немного об области видимости.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.03.2012, 10:55
Помогаю со студенческими работами здесь

Влияние абсолютного значения константы и использованных в ее изображении суффиксов L, U на тип данных
Нужно проиллюстрировать влияние абсолютного значения константы и использованных в ее изображении суффиксов L, U на тип данных, который и...

Найти строки, квадрат первого элемента которых меньше абсолютного значения второго элемента
Для матрицы из 2 столбцов и 9 строк отпечатать номер каждой строки, квадрат первого элемента которой меньше абсолютного значения второго...

Нахождение среднего значения
В общем, смысл таков, есть два цикла: j и i, в цикле j я хочу найти минимальное из десяти генерируемых а. А в цикле i сложить 1000 раз эти...

Нахождение среднего значения
Нужна помощь в написании функции-шаблона, которая считает среднее значение в массиве, самым простым методом Добавлено через 2 часа 32...

Нахождение значения функции
Решите, пожалуйста задачку. Дано действительное число a. Для функций f(x), графики которых представлены на рис. 1,а-1,г, вычислить f(a)....


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

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

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class - средства для работы с неизменяемыми структурами данных, каждое из которых предлагает свой уникальный подход к решению этой задачи. История их появления весьма. . .
Создание производительны­­х API с Java и gRPC
Wired 04.03.2025
В разработке производительность и масштабируемость микросервисных приложений играют ключевую роль. Традиционные REST API, несмотря на свою популярность и простоту, не всегда способны обеспечить. . .
Что нового в JDK 24
Wired 04.03.2025
JDK 24 знаменует собой значительный скачок в развитии Java, внося фундаментальные улучшения в производительность, безопасность и удобство разработки. Релиз включает множество революционых изменений,. . .
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Современная блокчейн-разработка на Java предоставляет разработчикам широкий спектр возможностей. В отличие от Solidity, который ограничен экосистемой Ethereum, Java позволяет создавать как. . .
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
Tестирование Pull Request в Kubernetes с помощью vCluster
stackOverflow 03.03.2025
При работе с микросервисной архитектурой критически важно обеспечить качественное тестирование каждого изменения перед его слиянием в основную кодовую базу. Однако тестирование Pull Request в. . .
Использование пакета Context в Golang
bytestream 03.03.2025
Управление параллельными процессами в современных приложениях - сложная задача, особенно когда речь идет о микросервисной архитектуре и распределенных системах. Пакет context в Go - это гибкое. . .
WebAssembly и Go: Работа с DOM и обработка ошибок
bytestream 03.03.2025
WebAssembly представляет собой технологию, позволяющую запускать низкоуровневый код в браузере практически на нативной скорости. Особенно интересные возможности открываются при использовании. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru