Или вспоминаем школьный курс и используем формулу x^y = exp(y*ln(x))
только скорректировать имена функций под С надо.
|
Или вспоминаем школьный курс и используем формулу x^y = exp(y*ln(x))
только скорректировать имена функций под С надо.
оба способа подошли, но pow больше понятен.Сообщение от KoVadim
результат выкладываю на всеобщее обозрение (прога вычисляет кубические корни).
ЗЫ: Ошибки не обрабатываются (делал прогу для проверки).
In TRANCE I trust...
Правильней #include <math.h>Сообщение от Konstantin.od
Теперь такой вопросик:
как можно получить введенное значение из консоли и поместить его в переменную (но без использования "cin >>")? gets и getc могут получать тип char*, а нужен double. cast из char* в double ессно не помогает...
In TRANCE I trust...
NoXX
Например, функция scanf из <cstdio>
~ Motivation is what gets you started. Habit is what keeps you going.
а как эта функция помещает значение в переменную, ведь синтаксис таков:
int scanf(
const char *format [,
argument]...
);
In TRANCE I trust...
где-то так:
Код:#include <cstdio> int main() { double a=0; scanf("%lg", &a); printf("%lg\n", a); return 0; }
~ Motivation is what gets you started. Habit is what keeps you going.
спасибо, помогло!Сообщение от Яр
ЗЫ: проги с использованием <iostream> слишком много весят...
In TRANCE I trust...
Кот-нить знает, можно ли в CBuilder'e использовать InternetOpenURL (как в MFC в <wininet.h>) или есть ей какой-нибудь аналог?
In TRANCE I trust...
А это MFC?Сообщение от NoXX
Лично мне казалось - Windows API, кусок откуда-нибудь из IE.
А если API - то можно из любой дырки,
на то оно и API.
из любой строки можно прочесть по формату,Сообщение от NoXX
так же как со стандартного ввода:
sscanf(sBuf,"%g",&nVar);
Первый параметр - строка char *.
Однако, а чего не воспользоваться stl?
Библиотека-то стандартная для С++
а значит работает везде.
Можно прочесть из строки бесформатно через strstream.
static linking considered harmful (c) ulrich drepperСообщение от NoXX
в конце концов, ничто не мешает сделать из нескольких одну
теперь такой вопрос:
есть текстовый файл размером 40817 байт.
задача состоит в том, чтоб после выражения "money_account: " в этом файле можно было менять значение на какое хочешь, а потом естественно сохранять обновленный файл.. прога графическая, поэтому fread, fopen и fwrite не подойдут из-за невозможности преобразования типов.. порекомендовали strstr, но что он даст? только позицию данной строки..
In TRANCE I trust...
NoXX,
регулярные выражения в помощь ).
~ Motivation is what gets you started. Habit is what keeps you going.
какие именно?Сообщение от Яр
просто я в С++ еще нахожусь на стадии "среднего чайника"![]()
In TRANCE I trust...
я пользую http://www.pcre.org/
но это на любителя...
The future is already here - it is just unevenly distributed. (c) W. Gibson
есть подозрение, что можно не извращаться, а сразу писать полноценный парсер
имхо это имеет смысл только если рекурсивных определений много.Сообщение от pal
но если это так, тогда, для начинающего, чтобы сразу не полировать мозги с бизоном, можно загрузить IDE для разработки грамматик с www.programmar.com
там триал кажется на месяц, можно успеть построить нужную грамматику.
а дальше - бизон или его аналоги, их много в инете...
геморроя короче полная голова.
А с другой стороны на регулярках всего-то - s/money_account:\s*([\d\.]+)/$newval/g;
The future is already here - it is just unevenly distributed. (c) W. Gibson
под полноценным парсером понималось не обязательно lalr, в зависимости от формата может быть достаточно того же strstr, главное - распарсить весь файл, а не пытаться в нем заменить число после некоей строки, которая может оказаться частью другого значения или комментария
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define S 9
int Ar[S][S];
int main()
{
short i,j,a,k,d;
i=S-1;
j=0;
k=0;
a=1;
d=S-2;
while (a<S*S+2)
{
if (j<=i)
{
if (j==0) почиму ==0
{
Ar[i][0]=a;
k++;
j=k;
i=S-1;
a++;
}
Ar[i][j]=a;
a++;
j--;
i--;
}
else
{
if (i==0) почиму ==0
{
Ar[0][j]=a-1;
d--;
i=d;
j=S-1;
a++;
}
Ar[i][j]=a-1;
a++;
j--;
i--;
}
}
for(i=0;i<S;i++)
{
for(j=0;j<S;j++)
{
printf("%3d",Ar[i][j]);
}
printf("\n");
}
getch();
return 0;
}
помогите у меня завтра зачет очень надо
![]()
Социальные закладки