>n; //Ввод данных cout. Выходная информация будет не соответствовать входной">Студопедия — II.Экспериментальный раздел работы. Пример 1. Рассмотрим одну из характерных ситуаций, которая возникает при работе с целыми типами данных.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

II.Экспериментальный раздел работы. Пример 1. Рассмотрим одну из характерных ситуаций, которая возникает при работе с целыми типами данных.





Пример 1. Рассмотрим одну из характерных ситуаций, которая возникает при работе с целыми типами данных.

 

#include <iostream.h>

#include <conio.h>

void main (void)

{

short n;

cout<<"Введите целое число n=?";

cin>>n; //Ввод данных

cout<<"n="<<n; //Вывод результата

getch();

}

Для выбранного типа целых чисел shortint введите ряд чисел, превышающих границу допустимых значений, например, 32769, 32770, 32771, 32772. Выходная информация будет не соответствовать входной. Чтобы лучше понять данную ситуацию, необходимо разобраться, как представлены целые числа в компьютере.

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

Пример 2. Составим программу, позволяющую выделить цифры трехзначного числа.

Запишем натуральное число n в виде n = akak-1...a0, где ak- цифры, составляющие его в десятичной системе счисления, которые необходимо выделить. Итак,

 

n = akak-1...a0 = a0100 + a1101 +... + ak10k

Значение a0 находится как остаток от деления числа n на 10. Разделив n на 10, и найдя снова остаток, получим цифру а1, и так далее. Приведем текст программы

 

#include <iostream.h>

#include <conio.h>

void main (void)

{

int n,m,res;

short a0,a1,a2;

//Ввод данных

cout<<"Введите значение натурального трехзначного числа n=?"<<endl;

cin>>n;

//Расчет

m=n;

a0=m % 10;

cout<<a0<<endl;

m=m/10;

a1=m % 10;

cout<<a1<<endl;

a2=m /10;

cout<<a2<<endl;

res=a0+10*(a1+10*a2);

//Вывод результата

cout<<"n="<<n<<" test="<<res<<endl;

getch();

}

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

 

Пример 3. Решим простую задачу финансовых операций со сложными процентами. Пусть вкладчик внес в банк единовременный вклад в размере . Ответ на вопрос, сколько лет понадобиться ждать, чтобы этот начальный вклад увеличился до желаемой суммы S при P% годовых начислений, сводится к вычислению по следующей формуле: . Напишем программу:

 

#include <conio.h>

#include <math.h>

double S0,S,P;

/*Функция, которая вычисляет, сколько лет понадобиться ждать,

чтобы этот начальный вклад увеличился до желаемой суммы */

double Lg(double s,double s0,double p)

{

return log10(s/s0)/log10(1+0.01*p);

}

void main(void)

{

//Ввод данных

cout<<"Введите значение единовременного денежного вклада S0= \?"<<endl;

cin>>S0;

cout<<"Введите значение ожидаемой суммы S=? "<<endl;

cin>>S;

cout<<"Введите значение годового процента начислений P=\? "<<endl;

cin>>P;

//Вывод данных

cout<<" Вам необходимо ждать "<<Lg(S0,S,P)<<" лет";

getch();

}

 

Разберитесь с текстом программы. Проведите отладку и тестирование. Как получить вывод в виде целого числа?

 

Пример 4. Рассмотрим пример, связанный с тем, что компьютеры не могут обеспечить неограниченную точность при хранении чисел.

 

#include <iostream.h>

#include <conio.h>

 

void main(void)

{

float y=0.9999999;

double x=0.9999999;

cout<<"Значение типа float 0.9999999 равно "<<x<<endl;

cout<<"Значение типа double 0.4999999 равно "<<y<<endl;

getch();

}

 

Пример 5. Составить программу, вычисляющую значение следующего выражения:

,

где a=0.721; b=0.324; x=0.976.

Если в выражении некоторая конструкция повторяется, то удобно ввести новую переменную:

и сделать следующие преобразования

где . Эти преобразования позволяют упростить выражения и избавиться от операции возведения в степень. Запишем программу:

#include <iostream.h>

#include <conio.h>

#include <math.h>

//Программа вычисляет значение выражения

void main(void)

{

//Объявление переменных и ввод исходной информации

double x=0.976,a=0.721,b=0.324,y,u,z;

//Расчет

z=a/(2*x+b);

u=z*z;

y=z*(1+u*(1/3.0+u*(1/5.0+u/7.0)));

//Вывод результатов}

cout<<"y="<<y;

getch();

}

 

Проведите отладку и тестирование программы.







Дата добавления: 2015-10-15; просмотров: 445. Нарушение авторских прав; Мы поможем в написании вашей работы!




Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


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


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

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

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

Примеры решения типовых задач. Пример 1.Степень диссоциации уксусной кислоты в 0,1 М растворе равна 1,32∙10-2   Пример 1.Степень диссоциации уксусной кислоты в 0,1 М растворе равна 1,32∙10-2. Найдите константу диссоциации кислоты и значение рК. Решение. Подставим данные задачи в уравнение закона разбавления К = a2См/(1 –a) =...

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

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

Studopedia.info - Студопедия - 2014-2026 год . (0.013 сек.) русская версия | украинская версия