PIPS
ddot_uri.c
Go to the documentation of this file.
1 #include <stdlib.h>
2 #include <stdio.h>
3 #include "tools.h"
4 
5 void ddot_uri(int n,int dx[n], int dy[n], int* r)
6 {
7  int i,m;
8  int dtemp=0;
9  m = n % 5;
10  if (m != 0)
11  {
12  for (i = 0; i < m; i++)
13  dtemp = dtemp + dx[i]*dy[i];
14  if (n < 5)
15  {
16  *r=dtemp;
17  return;
18  }
19  }
20  for (i = m; i < n; i = i + 5)
21  {
22  dtemp = dtemp + (dx[i]*dy[i] + dx[i+1]*dy[i+1] + dx[i+2]*dy[i+2] + dx[i+3]*dy[i+3] + dx[i+4]*dy[i+4]);
23  }
24 
25  *r = dtemp;
26 }
27 
28 int main(int argc, char ** argv)
29 {
30  int i,n;
31  int a, *b, *c;
32  if (argc < 3)
33  {
34  fprintf(stderr, "Usage: %s size data_file\n", argv[0]);
35  return 1;
36  }
37  n = atoi(argv[1]);
38  b = (int*) malloc(n * sizeof(int));
39  c = (int*) malloc(n * sizeof(int));
40  init_data_file(argv[2]);
41  init_data_int(b,n);
42  init_data_int(c,n);
44  ddot_uri(n,b, c, &a);
45  printf("%f\n",a);
46  free(b);
47  free(c);
48 }
49 
int main(int argc, char **argv)
Definition: ddot_uri.c:28
void ddot_uri(int n, int dx[n], int dy[n], int *r)
Definition: ddot_uri.c:5
void * malloc(YYSIZE_T)
void free(void *)
int fprintf()
test sc_min : ce test s'appelle par : programme fichier1.data fichier2.data ...
int printf()
void close_data_file()
Definition: tools.c:48
void init_data_file(const char *data_file)
Definition: tools.c:36
int init_data_int(int *ptr, const unsigned int n)
Definition: tools.c:141