Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2015, 21:27   #1
Екатерина861
Новичок
Джуниор
 
Регистрация: 26.02.2015
Сообщений: 3
По умолчанию есть две задачки, нужны блок схемы

первая задачка
#include <stdio.h>

main ()
{
int i = 1; // целочисленная переменная для подсчета количества элементов

char string[100]; // символьный массив, максимальное количество элементов - 100
printf( "Enter a string of symbols: ", string ); // ожидание действий пользователя

scanf( "%s", string ); // ввод пользователем строки символов

while( string[i] != '\0' ) // цикл подсчета строк, окончание — нулевой символ
{
i += 1;
}

printf( "The number of symbols in the string %s is %d", string, i );

return 0;
}

вторая задачка
#include <stdio.h>
#include <math.h> // математическая библиотека для вычисления синуса

double _fact ( long n ) ; // прототип функции вычисления факториала
double _pow ( double x, long n ) ; // прототип функции вычисления степени числа
double _pogr ( double first, double pogr ); // прототип функции вычисления погрешности
double intermed_sin( double x, long last ); // прототип функции вычисления синуса

// Тело программы: вычисление значения синуса и сравнение значения с библиотечным
main()
{
double x; // переменная, которую должен ввести пользователь
long last = 1; // конечное значение индекса
double sum = 0, pogr = 100.; // переменная для вычисления конечного значения
// и переменная для вычисления погрешности
printf ( "A value of x is: " );
scanf ( "%lf", &x ); // ввод пользователем градусной меры угла
while ( pogr > 0.0005 ) // конец вычисления, когда погрешность станет больше
// контрольного значения
{
sum = intermed_sin( x, last ); // вызов функции синуса
pogr = _pogr( sum, intermed_sin( x, last+2 ) ); // вычисление погрешности
last += 2; //увеличение индекса на 2
}
printf ( "%lf, %lf, %lf", sum, sin(x), pogr ); // вывод значений синуса и погрешности, на //которой закончилось вычисление
}

// функция факториала
double _fact( long n )
{
double temp = 1; // локальная переменная, конечное значение факторала
while( n > 0 ) // цикл, проверяющий промежуточное значения индекса
{
temp = temp * (double)n; // вычисление факториала с преобразованием переменной n
n--; // уменьшение значения индекса на 1, пока он > 0
}
return temp;
}

// функция возведения в степень
double _pow ( double x, long n )
{
double pow = 1; // локальная переменная для подсчета конечного значения
while ( n > 0 ) // продолжение цикла, пока индекс больше 0
{
pow = x*pow; // умножение x на x, хранение результата в переменной pow
n --; // уменьшение значения индекса на 1, пока он > 0
}
return pow;
}

//
double intermed_sin( double x, long last )
{
long sign = 1; // знак перед следующим значением, изначально «+»
long n = 1; // промежуточные значения индекса
double result = 0; // переменная для синуса угла x
for( long n = 1; n <= last; n +=2 ) // цикл, увеличивающий индекс на 2, пока он не станет // равным конечному значению индекса last
{
result += sign * _pow (x, n) / _fact (n); // вычисление значения синуса угла по // заданной формуле
if (sign > 0) sign = -1; // проверка знака и смена его на противоположный
else sign = +1;
}
return result;
}

// функция погрешности
double _pogr( double first, double second )
{
double pogr = 0; // переменная для хранения значения погрешности
pogr = (first+second)/2. - first; // вычисления погрешности по формуле (xⁿ+x(ⁿ+І))/2 - xⁿ
if (pogr < 0 ) return -1.*pogr; // определение знака значения погрешности
else return pogr;
}
Екатерина861 вне форума Ответить с цитированием
Старый 26.02.2015, 22:00   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

могу подсказать прекрасную программу для рисования блок-схем!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 26.02.2015, 22:04   #3
Екатерина861
Новичок
Джуниор
 
Регистрация: 26.02.2015
Сообщений: 3
По умолчанию

подскажите =)
Екатерина861 вне форума Ответить с цитированием
Старый 26.02.2015, 22:14   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Екатерина861 Посмотреть сообщение
подскажите =)
а вот
Изображения
Тип файла: png 4.png (26.9 Кб, 51 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужны блок-схемы snouwyt Помощь студентам 1 29.06.2014 22:59
Нужны блок-схемы к програмкам (Pascal) spinogryz_ua Помощь студентам 3 20.01.2012 23:56
Нужны блок схемы по готовой программе. Profan4ik Помощь студентам 4 01.07.2010 09:00
Нужны блок схемы. Завтра экзамен. Xenon0001 Помощь студентам 2 17.06.2010 20:59
Зачем нужны блок-схемы? fs444 Общие вопросы по программированию, компьютерный форум 31 27.01.2010 04:11