построить кубический сплайн(полином 3й степени, непрерывная вместе со своей первой и второй производной)удовлетворяющий дополнительным условиям dif(f(a))=A dif^2(f(b))=B
#include <iostream.h> int main() { char buf[] = "bcdfghklmnpqrstvwxyz"; char *str = new char [999]; cin>>str; int count = 0; for(int i = 0; str != '\0'; i++) { for(int j = 0; buf[j] != '\0'; j++) { if(str == buf[j]) { count++; break; } } } cout << count << endl; } вот а как она будет выгледеть с функцыей kol?
2KrabKN, вот вам функция: Code: #include <iostream> using namespace std; int kol(char * str); int main() { char *str = new char [999]; cin>>str; cout<<kol(str); } int kol(char * str) { char buf[] = "bcdfghklmnpqrstvwxyz"; int count = 0; for(int i = 0; str[i] != '\0'; i++) { for(int j = 0; buf[j] != '\0'; j++) { if(str[i] == buf[j]) { count++; break; } } } return count; } Но вот эта программа крайне не корректна, да и написана с ошибками, которые могут превести неизвестно к чему. Да и ищет она не гласные, а согласные. Могу предложить вам другой вариант (накидал по быстрому): Code: #include <iostream> #include <string> using namespace std; int kol(string str); int main(int argc, char * argv[]) { string slovo; cout<<"Vvedite slovo>"; cin>>slovo; cout<<kol(slovo); return 0; } int kol(string str) { string bukv = "AEIOUY"; int found = 0; int i = 0; int i2; int c = bukv.size(); while(i < str.size()) { i2 = 0; while(i2 < c) { if(str[i] == bukv[i2]) { found++; } i2++; } i++; } return found; }
как работает эта программа? я в С оч.слаб... что будет на экране в результате работы программы? В самом коде могут быть ошибки... пишет: Declaration terminated incorrectly что не так?
В программе допущены ошибки. Рабочий вариант: Code: #include<iostream.h> int * sfirst_function(void); int *isecond_function(void); void main() { int *pi=sfirst_function(); isecond_function(); cout << "Znachennya virne?" << *pi;} int * sfirst_function(void) { int ilocal_to_first=11; return &ilocal_to_first; } int *isecond_function(void) { int ilocal_to_second=44; return &ilocal_to_second; } Программа выведит сообщение: "Znachennya virne?"
еще один вариант. Code: #include <iostream> int *sfirst_function(void); int *isecond_function(void); int * sfirst_function(void) { int ilocal_to_first=11; return &ilocal_to_first;} int *isecond_function(void) { int ilocal_to_second=44; return &ilocal_to_second; } void main() { int *pi=sfirst_function(); printf("First Function = %d\n",*pi); int *si= isecond_function(); printf("Second Function = %d\n",*si); } На экране надпись: First Function =11 Second Function = 44
PHP: int *sfirst_function(void); int *isecond_function(void); Зафига? Это надо объявлять, если собираешься экспортировать эти функции PHP: int ilocal_to_first=11; return &ilocal_to_first; Так лучше не делать - локальные переменные удаляются из стека после возврата управления функцией, и не факт, что эта ячейка памяти не будет перезаписана до того, как вы это используете. Лучше передать возвращаемую переменную по значению, а не по ссылке
Нужно решить задачку на Си: Дана строка символов. Известно, что среди символов строки имеется хотя бы один символ, отличный от пробела. Преобразовать строку, удалив группы пробелов, которыми начинается и заканчивается строка. Если указанных групп пробелов нет, то оставить строку без изменения.
PHP: char *trim(char *str) { int len = strlen(str); // строка должна быть с завершающим нулем! int pos = 0; char *result = new char[len]; ZeroMemory(result, len); for ( int i = 0; i < len - 1; i++ ){ if ( memcmp(str[i], "0") != 0 ){ result[pos] = str[i]; pos++; } } return result; } Писал по памяти, могут некоторые аргументы у функций отличаться, но смысл, я думаю понятен
Замените условие цикла на for ( int i = 0; i < len - 1; i++ ) И подключите файлы string.h и windows.h
привет! Тема работы: Динамический список динамических списков Язык: Delphi Подскажите, что почитать или сам алгоритм описания данной структуры. Спасибо.
Огромная просьба Помогите пожалуйста на Borland C++ решить следующие задачки: Задача 1. Написать программу для вычерчивания набора из N кривых, для которых определены параметрические уравнения: x=x0 +(b-a)cosφ+acos((b-a)φ/a) x=y0 +(b-a)sinφ-asin((b-a)φ/a) Возьмите фиксированные значения a, b, соблюдая условия b>a, 0< φ<2π, b/a=8. Задача 2. Разработать и реализовать алгоритм для отсечения частей линий, если окно задано в форме пятиугольника. (Алгоритм Коэна-Сазерленда)
ПОМОГИТЕ С ПАСКАЛЕМ РИСУЕТ НЕ ТОТ ГРАФИК ЧТО НАДО Вот ссылка на то что должно получится http://xmages.net/upload/1496d668.jpg http://xmages.net/upload/151f94b2.png {Programm for y(x)=sgrs a*x+b.} program grafic; uses crt,graph; var grminx,grminy, grmaxx,grmaxy : integer; a, b, stepx, minx,miny, maxx,maxy : real; flag : boolean; punkt : integer; s : string; ercode : integer; function pow(x,p:real):real; begin pow:=exp(ln(x)*p); end; function log10(x:real):real; begin log10:=ln(x)/ln(10); end; function grinit:boolean; var grdriver, grmode, ercode :integer; begin grinit := True; grdriver:= Detect; initgraph(grdriver,grmode,'C:\lang\bp\BGI'); ercode:=graphresult; if ercode<>grok then begin writeln('error graphic:',grapherrormsg(ercode)); writeln('programm is stopped. '); grinit := False; end; end; function getgrx(x:real):integer; begin getgrx:=round((grmaxx-grminx)/(maxx-minx)*(x-minx))+grminx; end; function getgry(y:real):integer; begin getgry:=round((grmaxy-grminy)/(maxy-miny)*(y-miny))+grminy; end; function f(a,b,x:real):real; begin f:=sqrt(a*x+b); end; procedure GetMaxMinY(var miny : real; var maxy : real); var x,y : real; begin miny := f(a,b,minx); maxy := f(a,b,minx); x := minx+stepx; repeat y:=f(a,b,x); if y<miny then miny:=y; if y>maxy then maxy:=y; x:=x+stepx; until x>maxx; end; procedure FindXYAxes(var x : integer; var y:integer); begin if ((getgrx(0)>=grminx) and (getgrx(0)<=grmaxx)) then x := getgrx(0) else x := grminx; if ((getgry(0)<=grminy) and (getgry(0)>=grmaxy)) then y := getgry(0) else y := grminy; end; procedure DrawMesh; var labelsx,labelsy, blockx,blocky, tens : real; grx,gry : integer; s : string; x,y : real; axisx,axisy : integer; begin setcolor(lightgreen); rectangle(grminx,grminy,grmaxx,grmaxy); rectangle(grminx-1,grminy-1,grmaxx+1,grmaxy+1); labelsx:=15; labelsy:=15; blockx:=(maxx-minx)/labelsx; tens:=pow(10,round(log10(blockx))); blockx:=int(blockx/tens+1)*tens; blocky:=(maxy-miny)/labelsy; tens:=pow(10,round(log10(blocky))); blocky:=int(blocky/tens+1)*tens; settextstyle(SmallFont,HorizDir,2); FindXYAxes(axisx,axisy); x:=int(minx/blockx)*blockx; repeat grx:=getgrx(x); if ((grx>=grminx) and (grx<=grmaxx)) then begin setcolor(darkgray); line(grx,grminy,grx,grmaxy); setcolor(lightgreen); line(grx,axisy-2,grx,axisy+2); setcolor(yellow); str(x:5:2,s); outtextxy(grx+2,axisy+2,s); end; x:=x+blockx; until x>maxx; y:=int(miny/blocky)*blocky; repeat gry:=getgry(y); if ((gry<=grminy) and (grx>=grmaxy)) then begin setcolor(darkgray); line(grminx,gry,grmaxx,gry); setcolor(lightgreen); line(axisx-2,gry,axisx+2,gry); setcolor(yellow); str(y:5:2,s); outtextxy(axisx+2,gry+2,s); end; y:=y+blocky; until y>maxy; end; procedure DrawAxes; var s : string; axisx, axisy : integer; begin FindXYAxes(axisx,axisy); setfillstyle(0,0); bar(getgrx(0)+1,getgry(0)+1,getgrx(0)+40,getgry(0)+15); outtextxy(getgrx(0)+4,getgry(0)+2,'0'); setcolor(white); line(getgrx(minx)-20,axisy,getgrx(maxx)+20,axisy); moveto(getgrx(maxx)+20,axisy); linerel(-10,2); linerel(3,-2); linerel(-3,-2); linerel(10,2); outtextxy(getgrx(maxx)+15,axisy-10,'x'); line(axisx,getgry(miny)+20,axisx,getgry(maxy)-20); moveto(axisx,getgry(maxy)-20); linerel(2,10); linerel(-2,-3); linerel(-2,3); linerel(2,-10); outtextxy(axisx-15,getgry(maxy)-10,'y'); str(a:4:2,s); s := ' y(x)='+s+'*sin(x)) - sinusoid'; outtextxy(GetMaxX div 2 - 100 ,GetMaxY-25,s); end; procedure DrawGraphic; var first : boolean; grx,gry : integer; x,y : real; begin setcolor(LightBlue); first:=true; x:=minx; repeat y:=f(a,b,x); grx:=getgrx(x); gry:=getgry(y); if first then begin moveto(grx,gry); putpixel(grx,gry,getcolor); first:=false; end else lineto(grx,gry); x:=x+stepx; until x>maxx; end; BEGIN flag := false; repeat clrscr; writeln(' --== MENU ==--'); writeln('1. Input parameter function'); writeln('2. Draw graph function'); writeln('3. Exit'); writeln; writeln('Choose point menu -> '); readln(punkt); case punkt of 1:begin clrscr; repeat repeat writeln('Input min value x (radian) -> '); readln(s); val(s,minx,ercode); if (ercode <> 0) then writeln('Error min value x!'); until (ercode=0); repeat writeln('Input max value x (radian) -> '); readln(s); val(s,maxx,ercode); if (ercode <> 0) then writeln('Error max value x !'); until (ercode=0); if (minx>=maxx) then writeln('Min value x must be smaller max!'); until (minx<maxx); repeat writeln('Input value a -> '); readln(s); val(s,a,ercode); if (ercode <> 0) then writeln('Error value a!'); until (ercode=0); flag := true; repeat writeln('Input value b -> '); readln(s); val(s,a,ercode); if (ercode <> 0) then writeln('Error value b!'); until (ercode=0); flag := true; end; 2: begin if (flag) then begin if (grinit) then begin grminx:=48; grmaxx:=getmaxx-48; grminy:=getmaxy-48; grmaxy:=24; stepx:=(maxx-minx)/150; GetMaxMinY(miny,maxy); DrawMesh; DrawAxes; DrawGraphic; readkey; closegraph; end end else begin writeln('You need at the fist choose point 1 for value function!'); readkey; end; end; end; until (punkt=3); END.
Народ,помогите с лабой плиз.Задание такое: дан какой-то текстовый файл в котором записано предложение; надо чтобы прога открывала этот файл,в каждом слове заменяла первую букву на последнюю и записывала преобразованое предложение в новый текстовый файл.Язык-паскаль.Заранее спасибо
9. Используя редактор VI, написать программу на языке СИ и запустить ее на трансляцию в фоновом режиме. ------------ cобственно покажите элементарный кусок программы на си для linux
#include <stdio.h> int main( int argc,char * argv[] ) { printf( "linux forever!" ); return 0; } gcc proga.c -o proga
ребята, не совсем лабораторная работа, но все же из этой серии: Вот скин, там надо понять где ошибка и какую атаку можно принимать при таком раскладе.. внизу есть варинатов ответ. Я бы хотел, чтоб обяснили что к чему: