Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Табулирование графика функции, с использованием цикла 
:(
    Опции темы
fenixkl
  Дата 14.10.2007, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 14.10.2007

Репутация: нет
Всего: нет



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

Условие: задается функция на отрезке в виде графика.зад-ся АВ, В>A и кол-во точек табулирования "n" Протубулировать функции и написать результат на экране постранично в виде таблицы с шапкой,состающей из столбцов , №.найти наиб\наим на отрезке и выделить это в таблице напечатать их повторно в n столбце.Оста-е значения не повторяются

График функции.
user posted image

Примерно, что я пока успел и смог додуматься, то должно быть примерно так:

#include <cmath>  
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
    int n,i,m, ost;
   
    float a, b, x,y,min, max;
  double  Tab,z;
    do{
    cout<<"Vvedite  znachenie nachala otrezka AB \"a\" \na=";
    cin>>a;
    cout<<"Vvedite znachenie konca otrezka AB \"b\" \nb=";
    cin>>b;
    
    if(b<=a){ cout<<"\"B\" dolzhno byt bolshe \"A\""<<endl;}
    }
    while (b<=a);


     cout<<"Vvedite znachenie kolichestva tochek \"n\"  vnutri otrezka:\nn=";
     cin>>n; 
    { 
    min=-1,max=2;
      x=a;
      Tab=(b-a)/(n-1);
     
     for(i=1;i<=n;i++) 
     {
  m= x/4;
  z=x-4*m;
  if (z<=2) y=sqrt(1-(z-1)*(z-1));
if (z==2) y=max;
if(z>=2&&z<=3) y=2-sqrt(z*z);
if (z==3)y=min;
if(z>=4)y=0;
     

  if (y<min) min=y;
  else min=min;
  
  if (y>max) max=y;
  else max=max;

  x=x+Tab;
  }
  x=a;
  for (i=1;i<=n;i++)
  {
   m=(x/4);
  z=x-4*m;
  if (z<=2) y=sqrt(1-(z-1)*(z-1));
if (z==2)y=max;
if(z>=2&&z<=3) y=2-sqrt(z*z);
if (z==3)y=min;
if(z>=4)y=0;}
if ((i%20==0)||(i==1))
  {
  
  cout<<"N\t"
      <<"   X\t"
      <<"   Y\t"
      <<"min/max\n";
  };
   cout<<i<<"\t";
   cout<<setprecision(4)<<x<<"\t"
       <<setprecision(4)<<y<<"\t";
       
   if ((y==max)||(y==min)) {cout<<setprecision(4)<<y<<"\n";
          
  x=x+Tab;

    }}
  system("PAUSE");
  return 0;
  }  



Нужно подредактировть вывод строками и столбцами.
 smile Помогите пожалуйста с программой.Жду ваших конструктивных предложений.

Это сообщение отредактировал(а) fenixkl - 14.10.2007, 19:21
PM MAIL   Вверх
DjoNIK
Дата 15.10.2007, 07:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 320
Регистрация: 28.9.2006
Где: Питер/Георгиевск

Репутация: 4
Всего: 5



Неконструктивно, но все же...
Код желательно выделять в BB - так его приятнее читать!


--------------------
- Плесни-ка мне холодного кипятку.
- Как кипяток может быть холодным?! Ты, верно, хочешь кипяченой воды?
- Какая ещё кипяченая вода? Не пудри мне мозги - налейхолодного кипятку.
(разговор петербуржца и москвича)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0770 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.