jeyk Опубликовано 20 мая, 2010 Жалоба Поделиться Опубликовано 20 мая, 2010 Всем доброго времени суток. Задача такова: Необходимо найти производную функции аналитически. Т.е. юзер вводит некое выражение, например 2*x^3-ln(x) и программа выдаёт ответ 6*x^2-1/x. Язык: Надо написать на билдере С++, но суть не в билдере, а в самом коде. Заранее спасибо буду рад любым идеям. Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 21 мая, 2010 Жалоба Поделиться Опубликовано 21 мая, 2010 Заранее извиняюсь за большое количество кода, ко мозг кипит. Если у кого свежа голова - посмотрите в чем проблема. #include <vcl.h>#pragma hdrstop#pragma argsused#include <conio.h>#include <stdlib.h>#include <iostream.h>#include <fstream.h>#include <iomanip.h>struct student {char group[10];char PIB[60];char gender;int date;int bal_av;};void PrintFile (ifstream &inStudent){cout<<setiosflags(ios::left)<<setw(15)<<"PIB"<<setw(13)<<"Group"<<setw(11)<<"Gender"<<setw(10)<<"Date"<<setiosflags(ios::right)<<setw(5)<<"Seredniy bal"<<endl;student blankStudent;while (1){inStudent.read((char*)&blankStudent,sizeof(blankStudent)); if(inStudent.eof()) break; cout<<setiosflags(ios::left) <<blankStudent.PIB <<setw(16)<<blankStudent.group <<setw(10)<<blankStudent.gender <<setw(12)<<blankStudent.date <<setiosflags(ios::showpoint|ios::right)<<setw(13) <<blankStudent.bal_av<<endl; }}float FunctionVik (ifstream &inStudent){student Change[20];int i=0;while (1){inStudent.read((char*)&Change[i],sizeof(Change[i]));if(inStudent.eof()) break;i++;}inStudent.close();int sum=0,k=0;for (int j=0; j<i;j++){if (Change[j].gender=='w') {sum+=(2010-Change[j].date);k++;}}return sum/k;}void CleanInSame (ifstream &inStudent){int year=(int)FunctionVik(inStudent); int i=0;student Change[20];while (1){inStudent.read((char*)&Change[i],sizeof(Change[i]));if(inStudent.eof()) break;i++;}inStudent.close();ofstream outStudent ("d:\\base.dat", ios::binary);if (!outStudent){ cerr<<"File can't open"<<endl; exit(1); } for (int k=0; k<i; k++){ if (((2010-Change[k].date)<=year&&Change[k].gender=='w')||Change[k].gender=='m') outStudent.write((char*)&Change[k],sizeof(Change[k]));} outStudent.close(); }void main(){char skip,fl;student blankStudent;ofstream outStudent ("d:\\base.dat", ios::binary);if (!outStudent){ cerr<<"File can't open"<<endl; exit(1); } int count; cout<<"Write count of students: "; cin>>count; // zaluwae kinec stri4ku v potoci, tomy po getline prohodut pysta stri4kafor (int i=0; i<count; i++){ cout<<"Student's name: "; cin>>skip; cin.putback(skip); cin.getline(blankStudent.PIB,59); cout<<"Group: "; cin.getline(blankStudent.group,9); cout<<"Gender: "; cin>>blankStudent.gender; cout<<"Date: : "; cin>>blankStudent.date; cout<<"S_bal: "; cin>>blankStudent.bal_av; outStudent.write((char*)&blankStudent,sizeof(blankStudent)); } outStudent.close(); ifstream inStudent ("d:\\base.dat", ios::binary); inStudent.close(); char item=0; action: cout<<"\n\nChoose Action:\n"; cout<<"\n1.Print File."; cout<<"\n2.Clean in same file.\n3.Function.\n"; cin>>item; switch(item){ case '1': inStudent.open ("d:\\base.dat", ios::binary); PrintFile (inStudent); inStudent.close(); break; case '2': inStudent.open ("d:\\base.dat", ios::binary); CleanInSame (inStudent); inStudent.close(); inStudent.open ("d:\\base.dat", ios::binary); PrintFile (inStudent); inStudent.close(); break; case '3': inStudent.open ("d:\\base.dat", ios::binary); cout<<"\nSeredniy vik *inok: "<<FunctionVik(inStudent); inStudent.close(); break; default: cout<<"\nWrong number!!! Choose again."; goto action;} cout<<"\nContinue?";cin>>fl; if (fl=='1') goto action; elsegetch();} что не работает? Вывод записей осуществляется. Счисление среднего возраста студенток - работает. Не работает функция удаления записей, в которых возраст студенток старше среднего. При попытке вызова функции CleanInSame получаю ошибку деления на ноль. Также если например запустить функции Print, то после неее функция исчисления среднего возраста тоже дает деление на ноль. Если запустить первой функцию исчисления среднего результата - после нее не работает функция print - она просто не дает результата. Вот так вот :) Ссылка на комментарий Поделиться на другие сайты Поделиться
kiracoconut Опубликовано 23 мая, 2010 Жалоба Поделиться Опубликовано 23 мая, 2010 Спасите !!!!защита во вторник , а программа не работает !люблю её уже месяц!! Найдите ошибочку ((( :blink: даны последовательность 20-ти случайных чисел и N - натуральное число , введенное с клавиатуры.Отсортировать все числа по возрастанию ,сделав предварительные вычисления X1+N ,X2-N,X3+N,X4-N и тд.Результат оформить в виде таблицы :g: program kira1; var mas: array[1..20] of integer; n,check,i,j: integer; c1,c2,c3,c4,c5,c6:char; begin randomize; c1:=chr(218); c2:=chr(196); c3:=chr(191); c4:=chr(179); c5:=chr(192); c6:=chr(217); (Продолжить) write('Vvedite pojaluista N: '); readln(n); for i:=1 to 20 do begin mas:=random(100); writeln(mas:4); end; check:= (i mod 2); for i:=1 to 20 do begin if (check=0) then mas:=mas-n else mas:=mas+n; end; for j:=1 to 20 do for i:=1 to 20-j do if mas>mas[i+1] then begin check:=mas; mas:=mas[i+1]; mas[i+1]:=check; end; writeln(c1,c2,c2,c2,c2,c2,c2c2,c2,c2,c2,c2,c2,c2,c2,c2,c3); i:=1; while(i<21) do begin write(c4); for j:=1 to 5 do begin write(mas:4,c4); inc(i); end; writeln; writeln(c5,c2,c2,c2,c2,c2,c2c2,c2,c2,c2,c2,c2,c2,c2,c2,c6); end; writeln; write('Press Enter to exit...'); readln; end. пожалуйста!!!!!!! Ссылка на комментарий Поделиться на другие сайты Поделиться
Хиросима Опубликовано 24 мая, 2010 Жалоба Поделиться Опубликовано 24 мая, 2010 Друзья, очень прошу помочь сделать лабы по С. Много болел, сейчас сам не успеваю сделать — зашиваюсь с курсовыми. Буду крайне благодарен. :g: 1. В памяти есть массив из 10 элементов. Построить новый массив, элементы которого меньше 63, входят в начальный массив и размещены в новом массиве в порядке уменьшения кодов. 2. EEPROM — память микропроцессора Написать программу вычитания многобайтовых кодов, размещенных в виде массивов в памяти EEPROM 3. В одномерном массиве, который состоит из n целых элементов, высчитать минимальный за модулем элемент массива и сумму модулей элементов массива, размещенных после первого элемента, равного нулю. Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 24 мая, 2010 Жалоба Поделиться Опубликовано 24 мая, 2010 kiracoconut: program kira1; var m:array[1..20]of integer; c,n,i,j:integer; begin randomize; for i:=1 to 20 do m[i]:=random(100); write('Vvedite pojaluista N: '); readln(n); writeln;for i:=1 to 20 do write(m[i]:4); writeln;j:=1; for i:=1 to 20 do begin m[i]:=m[i]+j*n; j:=-j end;for i:=1 to 20 do write(m[i]:4); writeln;for j:=1 to 20 do for i:=1 to 20-j do if m[i]>m[i+1] then begin c:=m[i]; m[i]:=m[i+1]; m[i+1]:=c end; for i:=1 to 20 do write(m[i]:4); writeln;write('Press Enter to exit...'); readln end. Понятие таблицы предполагает помещение элементов в ячейки, но специальное выделение границ ячеек линиями совершенно необязательно. Вообще рисовать линии сетки при ширине экрана 80 символов значит делать строки из 20 чисел нечитаемыми. Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 я спрашывал по посту http://www.softboard.ru/index.php?s=&s...st&p=490843 . Елси кому надо - решение - забыл возвращать указатель на начало файла Ссылка на комментарий Поделиться на другие сайты Поделиться
maksimilian Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 . Ввести строку из букв. Гласные буквы вывести в одном окне по диагонали окна, согласные - в другом окне по другой диагонали. Второе окно должно появиться через 3 секунды после первого. По окончанию работы программы должен прозвучать звуковой сигнал. Выход из программы: нажатие клавиши ESC. я в шоке это нужно в паскале написать с модулем crt нуна делать Ссылка на комментарий Поделиться на другие сайты Поделиться
Хиросима Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 Друзья, очень прошу помочь сделать лабы по С. Много болел, сейчас сам не успеваю сделать — зашиваюсь с курсовыми. Буду крайне благодарен. :) 1. В памяти есть массив из 10 элементов. Построить новый массив, элементы которого меньше 63, входят в начальный массив и размещены в новом массиве в порядке уменьшения кодов. 2. EEPROM — память микропроцессора Написать программу вычитания многобайтовых кодов, размещенных в виде массивов в памяти EEPROM 3. В одномерном массиве, который состоит из n целых элементов, высчитать минимальный за модулем элемент массива и сумму модулей элементов массива, размещенных после первого элемента, равного нулю. :) Ссылка на комментарий Поделиться на другие сайты Поделиться
maksimilian Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 переделать через процедуру помогите плиз Элемент двухмерного массива называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Подсчитать количество локальных минимумов заданной матрицы размером NxN; найти максимум среди всех локальных минимумов uses crt; type Matr=array[1..100,1..100] of integer; var i,j,k,n,m,max,elem:integer; a:Matr; function LocMin(i,j:integer;a:Matr):boolean; begin LocMin:=((i=1)or(a[i,j]<a[i-1,j]))and ((j=1)or(a[i,j]<a[i,j-1]))and ((i=n)or(a[i,j]<a[i+1,j]))and ((j=m)or(a[i,j]<a[i,j+1])); end; begin clrscr; max:=0; write ('Vvedite matrizu razmernosti n*m '); readln(n,m); writeln; for i:=1 to n do for j:=1 to m do begin write('Vvedite znachenie[',i,',',j,']:'); readln(a[i,j]); end; for i:=1 to n do begin for j:=1 to m do begin write(a[i,j]); write(' '); end; writeln; end; writeln; k:=0; for i:=1 to n do for j:=1 to m do if LocMin(i,j,a) then begin k:=k+1; if a[i,j]>max then max:=a[i,j]; end; writeln('kolichestvo lokalnich minimov=',k); writeln('maksimalnij element =',max); readln end. Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 Создать список типа "кольцо" с полезной информацией: строки, содержащие стадии круговорота воды в природе. Создать методы, которые выводят текущий элемент кольца и переходят к следующему Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 25 мая, 2010 Жалоба Поделиться Опубликовано 25 мая, 2010 #include <vcl.h>#pragma hdrstop#include <iostream.h>struct dl_node { struct dl_node *next; //next struct dl_node *prev; //prev};struct int_list { struct dl_node node; char * value;};void list_append(struct dl_node *to, struct dl_node *what);void list_init (struct dl_node *list);void list_append(struct dl_node *to, struct dl_node *what) {what->next = to->next;what->prev = to;to->next = what;what->next->prev = what; /* FIXED: */}void list_init (struct dl_node *list) {list->next = list->prev = list;}struct dl_node our_list;struct int_list *element;int main(int argc, char* argv[]){list_init (&our_list); char skip;bool i=true; int ans; char text[30];for (int j = 0; j < 256; j++) text[i]=0;do {cout<<"Etap krygoobigy:\n";for (int j = 0; j < 256; j++) text[i]=0;cin>>skip;cin.putback(skip);cin.getline(text,29);element = (struct int_list *)malloc (sizeof (int_list));element->value = text;list_append (&our_list, (struct dl_node*)element);cout<<"Continue?1/0"; cin>>ans; if (ans==1) i=true; else i=false;}while (i); i=true;do {cout<<"\n"<<element->value<<"\n"; element->node.next;cout<<"Continue?1/0"; cin>>ans; if (ans==1) i=true; else i=false;}while (i);getchar();getchar();return 0;} что-то делает прога, но непонятно что. Вроде последний записаный елемент выводит, но вот как двигать праильно указателями...хз Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 26 мая, 2010 Жалоба Поделиться Опубликовано 26 мая, 2010 пожалуйста, отозвитесь по посту http://www.softboard.ru/index.php?s=&s...st&p=491242 Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 26 мая, 2010 Жалоба Поделиться Опубликовано 26 мая, 2010 #include <vcl.h>#pragma hdrstop#include<stdio.h>#include<conio.h>#include<stdlib.h>#include<alloc.h>#define null 0struct node{char *text;struct node *link;}*start,*last;void create(char *data){struct node *q,*tmp;tmp=(struct node *)malloc(sizeof(struct node));tmp->text=data;tmp->link=null;if(last==null){last=tmp;tmp->link=last;}else{tmp->link=last->link;last->link=tmp;last=tmp;}}void add(char *data){struct node *q,*tmp;tmp=(struct node *)malloc(sizeof(struct node));tmp->text=data;tmp->link=last->link;last->link=tmp;} void disp() { struct node *q; if(last==null) { printf("list isdempty"); } q=last->link; while(q!=last) { printf("%s",q->text); q=q->link; } printf("%s",last->text); }void main(){int ch,n,m,position,i;char s[20];last=null;create("");while(1){printf("\n1.add\n2.disp\n3.exit");printf("\nChoose ");scanf("%d",&ch);switch(ch){case 1:printf("Item:");scanf("%s",&s);add(s);break;case 2:disp();break;case 3:exit(0);break;default:printf("wrong choice");}}} один з оптимальных вариантов. Но додавание елемента осуществляется только с последним елементом. Тоисть, например после ввода 123 456 789 Результат 789789789 Ссылка на комментарий Поделиться на другие сайты Поделиться
ts@ndr Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 снова нужна ваша помощь . . . Нужно запрограммировать имитационную модель для вычисления вероятности того что при бросании пяти игральных костей на трех из них выпадет одинаковое число очков. Нужно чтобы программа проделала 100, 1000, 10000, 100000 таких вот экспериментов (кидков) и вывела потом количество положительных результатов . . . Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 (изменено) core_st: В первой программе было непонятно что вообще, конструкции типа while(i); остались за пределами моего понимания... Вторая программа гораздо лучше, но это не циклический список. "Любовь - кольцо, а у кольца начала нет и нет конца..." :blush2: last там в принципе не должно быть. Я бы сделал вместо start и last одну ссылку current на текущую запись, а метод add, который создает новую запись с данными, таким: он создает новую запись с данными, и, если списка нет (указатель на текущую запись current==NULL), то в этой записи в ссылку на следующую заносится адрес самой этой записи (создается кольцевой список из одной записи), а если список уже есть (ссылка current на текущую запись ненулевая), то ссылка текущей записи на следующую копируется в новую запись, а в текущую запись вместо скопированной ссылки помещается ссылка на новую запись. Вот мы и включили новую запись в кольцевой список. Программа - это перевод с русского на C++, хороший путь написания более-менее сложных программ - написать сначала комментарии или псевдокод на русском, а потом переводить их на C++. А сразу писать на C++ - это надо и думать на C++, это гораздо труднее. Изменено 27 мая, 2010 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 (изменено) ts@ndr: var d:array[1..6]of byte; s,i,n:longint; k,j:byte;begin n:=10; randomize; for k:=1 to 4 do begin s:=0; n:=n*10; for i:=1 to n do begin for j:=1 to 6 do d[j]:=0; for j:=1 to 5 do inc(d[random(6)+1]); for j:=1 to 6 do if d[j]=3 then inc(s); end; writeln('N=',n:8,' S=',s:8);end;readlnend. Небольшое пояснение: в d[j] после каждого бросания пяти костей будет записано, сколько раз вышло j. Если для какого-то j было три раза - не зря бросали кости :blush2:, увеличиваем число удач на единицу. Изменено 27 мая, 2010 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 я таки туплю. 3 часа не могу ту прогу сделать. struct node{char *text;struct node *link;}*current;void add(char *data){struct node *tmp;tmp=(struct node *)malloc(sizeof(struct node));tmp->text=data;if (current==null){current=(struct node *)malloc(sizeof(struct node));current->link=tmp;} else {tmp=current->link;current->link=tmp;}}void disp() {struct node *q;if(current==null) { printf("list isdempty");} q=current->link; while(q!=current){ printf("%s",q->text); q=q->link;} printf("%s",current->text);}void main(){int ch,n,m,position,i;char s[20];while(1){printf("\n1.add\n2.disp\n3.exit");printf("\nChoose ");scanf("%d",&ch);switch(ch){case 1:printf("Item:");scanf("%s",&s);add(s);break;case 2:disp();break;case 3:exit(0);break;default:printf("wrong choice");}}} получаю acess violation в строке printf("%s",q->text); Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 (изменено) core_st: Не путай между собой C и C++. Нельзя использовать строки C с операциями C++. В C, например, НЕТ присваивания строк - надо вызывать специальную функцию. И когда ты объявляешь строку типа *s, память для нее НЕ выделяется - фактически это лишь указатель на начало строки, которой нет ;) И не забывай, что null и NULL - разные вещи ;) Немного доработал твою программу. Использовал только средства чистого C. #include<stdio.h>#include<stdlib.h>#include<string.h>struct node{char text[20]; struct node *link;}*current=NULL;void add(char *data){struct node *tmp=(struct node *)malloc(sizeof(struct node)); strcpy(tmp->text,data);if(current==NULL)tmp->link=tmp; else{tmp->link=current->link; current->link=tmp;}current=tmp;}void disp(){if(current==NULL)printf("list is empty");else{printf("%s\n",current->text); current=current->link;}}int main(){char ch[20],s[20];while(1){ printf("\nChoose: 1:add 2:disp 3:exit\n"); scanf("%s",ch); switch(*ch){case '1':printf("Item: ");scanf("%s",s); add(s); break;case '2':disp(); break;case '3':exit(0); break;default:printf("wrong choice!!!\n"); break;} }} Записи показываться по disp будут начиная с последней введенной. P.S. Немного подправил - добавил инициализацию current при объявлении. Изменено 27 мая, 2010 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
core_st Опубликовано 27 мая, 2010 Жалоба Поделиться Опубликовано 27 мая, 2010 есть еще добрые люди. спасибо огромное. все просто и доходчиво ;) Ссылка на комментарий Поделиться на другие сайты Поделиться
maksimilian Опубликовано 28 мая, 2010 Жалоба Поделиться Опубликовано 28 мая, 2010 найти n! и проверить встречаються в записи две одинаковых цифры которые стоят рядом Ссылка на комментарий Поделиться на другие сайты Поделиться
maksimilian Опубликовано 28 мая, 2010 Жалоба Поделиться Опубликовано 28 мая, 2010 помогите плиз Ссылка на комментарий Поделиться на другие сайты Поделиться
Yezhishe Опубликовано 28 мая, 2010 Жалоба Поделиться Опубликовано 28 мая, 2010 To maksimilian На всякий случай - прочтите, пожалуйста. P.S. Надеюсь на понимание... Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 28 мая, 2010 Жалоба Поделиться Опубликовано 28 мая, 2010 (изменено) maksimilian: Внимательно прочитай первое предупреждение в первом посте этой темы. Не говоря уже о том, что за 12 минут между сообщениями, скорее всего, и Скорая помощь не приедет :) var p,r,s,n:integer; i:longint;beginwrite('N ? '); readln®; if r<=12 then s:=r else s:=12; i:=1; for p:=1 to s do i:=i*p;write('Factorial is '); if r<=12 then writeln(i) else writeln('too big!');s:=10; repeat p:=s; s:=i mod 10; if p=s then break; i:=i div 10 until i=0;writeln('Two digits side by side: ',i<>0); readlnend. P.S. На самом деле проверка, есть ли в n! рядом две одинаковые цифры, осуществляется куда проще, но в программе это проверяется "в лоб", без математики. Вообще же программа проверки этого вся уложилась бы в одну маленькую строчку: var i:word; begin readln(i); writeln(i>8); readln end. Изменено 28 мая, 2010 пользователем Тролль Ссылка на комментарий Поделиться на другие сайты Поделиться
sopik Опубликовано 29 мая, 2010 Жалоба Поделиться Опубликовано 29 мая, 2010 меню: Создание файла, Просмотр файла, Поиск, Выход. В файле содержатся структуры со сведениями об абитуриентах: № абитуриента, ФИО, адрес, название предмета, оценка. Вывести информацию об абитуриентах, получивших по заданному предмету положительные оценки. #include <stdio.h>#include<conio.h>#include<string.h>struct abityrent{int nomer;char fio[50];char adres[50];char predmet[20]; int ocenka[1];} a1,styd;void cozdat (FILE*);void prosmotr (FILE*);void poisk (FILE*);void exit (FILE*);main(){char c;FILE*nf;while (1){clrscr();puts("++++ меню ++++");puts("1-создание");puts("2-просмотра");puts("3-поиск");puts("0-выход");c=getch();switch©{case '1':cozdat(nf); break;case '2' :prosmotr(nf); break;case '3' :poisk(nf); break;case '0' :return 0;defaults: puts("*неверный ввод ");}}}///////////////////////////////////////////////////////////////void cozdat(FILE*nf){char ch;nf=fopen("file.dat","wb");clrscr();printf("\n ввод абитуриентов\n");do{printf("\n-введите номер*:\n");scanf("%d",a1.nomer);printf("\n введите фио:\n");scanf("%s",a1.fio);printf ("\n-адрес*:\n");scanf("%s",a1.adres);printf ("\n предмет :\n");scanf("%s", a1.predmet);printf("\n оценка: \n");scanf("%d",a1.ocenka);fwrite(&a1, sizeof(a1),1,nf);printf("\n закончить? д/н* \n");ch=getch();}while(ch !='¤');fclose(nf);}/////////////////////////////////////////////////////////////////////////void prosmotr (FILE*nf){ int i;clrscr();nf=fopen("file1.dat","rb");i=1;fread(&a1, sizeof(a1),1,nf);while(!feof(nf)){printf("\n %d %s %s %s %d",i,a1.nomer,a1.fio,a1.adres,a1.predmet,a1.ocenka);fread(&a1, sizeof(a1),1,nf);i++;}fclose(nf);getch();}////////////////////////////////////////////////////////////////////////////void poisk(FILE*nf){int i;clrscr();a1=styd[i];nf=fopen("file1.dat","rb");printf("\n поиск хорошистов \n");printf("\n введите предмет");scanf("%s",a1.predmet);for(i=0,i++;) не могу организовать вывод абитуриентов с положительными оценками, подскажите Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 29 мая, 2010 Жалоба Поделиться Опубликовано 29 мая, 2010 sopik: не могу организовать вывод абитуриентов с положительными оценкамиА у них бывают отрицательные? :blush2:)Программу смотреть не стал, к тому же у меня другой компилятор, но относительно этого - просто в prosmotr перед printf дай if(a1.ocenka>2) Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти