Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!! / 8 сообщений из 8, страница 1 из 1
13.02.2007, 15:33
    #34327479
Homoerro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Задачи лабораторной №1:
1.уметь записывать решение задачи в виде математического выражения
2.уметь записывать математическое выражение на языке Turbo C++.
3.уметь определять входные и выходные данные,
4.уметь писать линейную программу,
5.уметь находить и исправлять синтаксические ошибки,
6.уметь тестировать программу (не менее 3 вариантов тестов в т.ч. с пограничными условиями ),
7.уметь пользоваться стандартными математическими функциями.


Задания:

1) (x*(1-x)+x*(sqr(x)-1))/8*sqr(x)

2) (ln(sqrt(x-5))+ln(sqrt(2*x-3)))

3) Написать программу, которая выводит на экран первые четыре степени числа "пи".


p.s. В первом и во втором задании математические выражения написанны на языке Паскаль, т.к. я знаю только Паскаль, а Turbo С++ сегодня впервые только увидел.
Знатоки программирования помогите мне пожалуйста решить эти задачки на ЯВУ С++.
Заранее респект и человеческое спасибо!!!
...
Рейтинг: 0 / 0
13.02.2007, 17:58
    #34328096
Termi_uc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Быстро опишу, что пришло в голову. Проверить негде, так, что с первого раза может не заработать.

По пунктам:
1. В виде математического выражения записывается примерно также, как в pas'е, только вместо sqr(x) применяй x*x. Ну и там другие ограничения...
2. ---//---
3. Я так понимаю при определении функции? Выход - это то, что функция возвращяет операцией return, или по ссылке (int x; SomeFunk(&x);), или по указателю (int * x = new int; SomeFunk2(x);).
Вход - те параметры которые передаются в функцию(void Funk(int x, char S));
4. По-моему линейная программа, это когда ты весь исполняемый код пишеж в главной функции (void Main(){...}). Наверное...
5. Для этого надо знать язык. Если знаеш pas, то можеш въехать и в c++.
6. Тестировать консольную программы - мля. Средствами языка можно с помощью getch() - при вызове функция останавливает выполнение приложения и ждёт от пользователя нажатия на клавишу (и получает код этой клавиши);
Пример:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
void Main()
{
 int X;
 cout>>"Введите цыфру 1: ";
 cin<<X;
// По-шаговые вычесления
 for(int i( 0 ) ; i <  10  ; i++)
 {
  X = X * i;
  cout>>"Результат вычисления: ">>X;
  getch();
 }
}
Другие способы отладки зависят от компилятора, и от знаний програмиста. Поищи в инете.
7. Стандартные математические функции посмотри в файле math.h (или примерно такое название - зависит от компилятора). Такие функции как cos, sin, tan, ctan, log, log10 и т.д. понятны по названию, описание остальных ищи в инете (или возьми умную книгу). Кстати названия math-функций похожи на аналогичные в pas. (Покрайней мере если сравнивать Builder и Delphi фалианты библиотек math).

Задания примерно так:
Код: plaintext
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.
#inclule "math.h"

double Math1(double x)
{
 return ((x * ( 1  - x) + x * (/*sqr*/(x * x) -  1 )) /  8 ) * /*sqr*/(x * x);
}

double Math2(double x)
{
 return log(sqrt(x -  5 )) + log(sqrt( 2  * x -  3 ));
}

void Main
{
 double X, X1, X2;

 cout>>"Введите цыфру 1: ";
 cin<<X;
 X1 = Math1(X);
 cout>>"Ответ: ">>X1;

 cout>>"Введите цыфру 2: ";
 cin<<X;
 X2 = Math2(X);
 cout>>"Ответ: ">>X2;

 getch();//Чтобы прога сразу не закрылась.
}
Если конструкции типа "cout>>" не компилятся, то попробуй поставить стрелки в другую сторону. Проверить неначем.

Третие задание делается с использованием спец. функции при выводе в поток cout или с использованием функции printf, с соответствующими параметрами. Извени щаз не могу вспомнить с какими.

По поводу Turbo C++ смотри здесь:http://dmitry.ints.net/library/prog/link/C/cpp_1.ghtml
...
Рейтинг: 0 / 0
13.02.2007, 20:07
    #34328462
kylix
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Последнее задание что то типа

Код:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
#define pi 3.1415926 
#include <iostream.h>
#include<iomanip.h>
#include <math.h>
int main()
{ for(int i=1;i<=4;i++)

{	double result=pow(pi,i);//Функция возведения в степень
cout<<result<<endl;
}
 return 0;
}

...
Рейтинг: 0 / 0
13.02.2007, 22:22
    #34328617
Slip
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Termi_uc
Код: plaintext
#inclule "math.h"

Ну,все таки
Код: plaintext
1.
#include <math.h>
А заодно, раз уж cout'ы используешь, то и
Код: plaintext
#include<iostream.h>
Termi_uc
Код: plaintext
1.
2.
void Main
{
...

А вместо этого:
Код: plaintext
1.
2.
3.
void main()
{
...
Termi_uc
Если конструкции типа "cout>>" не компилятся, то попробуй поставить стрелки в другую сторону. Проверить неначем.

Да уж, не помешает...
Termi_uc
Третие задание делается с использованием спец. функции при выводе в поток cout или с использованием функции printf, с соответствующими параметрами. Извени щаз не могу вспомнить с какими.

А при чем здесь это?
Для этого нужно только в степень возводить...
...
Рейтинг: 0 / 0
14.02.2007, 17:58
    #34331296
Termi_uc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Гы.

Я'ж сказал, C++ небыло под рукой. Из головы брал. Сорри за ошибки
...
Рейтинг: 0 / 0
14.02.2007, 18:01
    #34331306
Termi_uc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Slip
А при чем здесь это?
Для этого нужно только в степень возводить...
Я думал, что число
double pi(3.1415926);
надо представить в виде "3.1415". 1415 - последние 4 степени числа. Глюкануло что-то.
...
Рейтинг: 0 / 0
16.02.2007, 16:21
    #34337105
Anton S.Torhov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Все просто.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
#include <iostream>
#include <cmath>
using namespace std;

const double PI= 3 . 14159 ;

int main()
{
double x;
cout<<"Enter x-> ";
cin>>x;
double rez=(x*( 1 -x)+x*(sqrt(x)- 1 ))/ 8 *sqrt(x);
double rez2=log(sqrt(x- 5 ))+log(sqrt( 2 *x- 3 ));
double pi_in_4=pow(PI, 4 );
cout<<"All results:\n";
cout<<"1->"<<rez<<'\n';
cout<<"2->"<<rez2<<'\n';
cout<<"3->"<<pi_in_4<<'\n';

return  0 ;
}
не знаю как в Turbo С++,но в Студии работает.Вообще здесь все по стандарту С++.
...
Рейтинг: 0 / 0
16.02.2007, 16:26
    #34337129
Anton S.Torhov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!!
Да кстати если нельзя пользоваться библиотечной функцией возведения в степень,то можно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
//-------------power--------------------
int p;
cout<<"Enter a value->";
cin>>p;
while(p--)
{
pi*=p;
}
Примерно так.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Простая программа(лаба №1)! Помогите! С++ в первый раз сегодня увидел!!! / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]